|
53586
|
Recurrent Neural Network by @crazydave | Stardance
|
|
1
|
32.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-24T02:26:15Z", "hours": 32.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a recurrent neural network from scratch in Python using numpy, which generates text one character at a time in the style of Shakespeare. Because it keeps a memory of what it has recently seen, it learnt capitalisation, line breaks, punctuation, character-name formatting and roughly what English words look like, starting from nothing but the raw text, which I think is super cool! The most challenging part of this project was getting it to produce good output, first through backpropagation through time, where off-by-one bugs in the hidden state indexing and a bias gradient I forgot to update meant it wasn’t training properly, and then after training it with more layers, the error was much lower but the output was terrible, which took me a very long time to figure out. It turned out the model had barely ever seen a blank memory during training, so I fixed it by building up its memory on some text before it starts generating. I also added command line arguments to the code so that people can generate text or train their own model in their terminal without editing the python file. To test it, follow the install instructions on the README, you can either download the python code and run that, or download the compiled versions in the releases page on Github.", "repo": "https://github.com/rufus-gh/recurrent-neural-network", "demo": "https://github.com/rufus-gh/recurrent-neural-network/releases"}]...
|
[{"post_id": 72936, "ts": "202 [{"post_id": 72936, "ts": "2026-09-24T02:19:48Z", "hours": 0.3175, "text": "Added some code so that users can pass in arguments. I also spent a while trying to set up the releases page using github actions, and I used claude to make the github actions script for me (none of this went towards logged hours as it wasn’t in the IDE), but I finally got the releases to work (ignore the 1.0.4, I was trying to get it to work). I had three problems. One of them was that I accidentally named the “github” folder “github” (without the dot) so it wasn’t correctly running as an action. Another problem was pyinstaller using relative paths but remembered the same thing happened to me on my last project so i just used the same fix. The final problem was that my model checkpoint file somehow got deleted and it was needed for the Github actions but I had another copy so I put it back into the project and committed it, and it finally worked. I also got Al to help me write the README as it is boring to do. It will be shipped shortly so please check it out. (also dont mind the screenshot below being a screenshot of stardance, when I tried to post this, the site froze, so I screenshotted it first to make sure I didn’t lose it, and then it broke so I did it again)."}, {"post_id": 60564, "ts": "2026-09-02T23:54:38Z", "hours": 6.5103, "text": "After training it with the updated code, the output was terrible although the error was much lower, so I was really confused. I wasn’t sure what went wrong, and it took me a very long time to figure it out. When training, I feed in the previous step’s memory back into it and in training the memory is never wiped each epoch. However, when testing the output, I initialised it with a memory of just zeros, which it had barely experienced training with so wasn’t able to output meaningful things. I was able to fix it by initialising its memory on the training text itself to give it a memory state it is used to and that fixed it. You can see an output from it below."}, {"post_id": 55079, "ts": "2026-08-26T14:56:00Z", "hours": 5.5619, "text": "I did multiple training sessions and tweaked the learning rate, as after training with more layers and complexity, the model ended up with a much worse rate. I tried decreasing the learning rate and that led to a much better result. I then implemented something which reduces the learning rate over time, so that hopefully it will not plateau. I am thinking that to get to more levels of complexity in terms of producing actual content i will need to turn it into a LSTM, which has long and short memory. I am going to train it for a while now with the update and see how it goes."}, {"post_id": 54376, "ts": "2026-08-25T10:53:01Z", "hours": 6.1772, "text": "I updated the rnn to support multiple hidden layers, as previously it had a single layer, so I had to update the forward and backwards passes as well as the adagrad to account for the multiple layers. I started off with two and tested it with a hidden size of 256, but I didn’t see any improvement, however I didn’t train it for as long. I am now in the process of implementing a variable number of layers from 1 to any number, so that the model can learn greater complexity, however this comes at the cost of much slower training. Currently the training on 2 layers is a decent slowdown compared to with 1 layer, as i also increased hidden size to 512. So far I have made the forward pass work for multiple layers (greater than 2) but the rest of it still only supports 2 layers."}, {"post_id": 54127, "ts": "2026-08-24T23:04:59Z", "hours": 13.3083, "text": "I am making a recurrent neural network from scratch in python using numpy, trained on Shakespeare text to generate character-by-character in his style.This is an improvement on the previous neural network that I made as it keeps a memory based on the things it has recently seen, so it’s next prediction depends on what it has previously seen which will hopefully make it be able to learn more advanced patterns.I added loading and chunking of data, so basically it takes in a text file, and then it splits it into chunks (I use 25 character long chunks) in pairs with one shifted across by one and saves it as input and targets.I wrote the forward pass, loops through each character in a chunk, updates a hidden state with tanh, then a softmax over the vocab to predict the next character.I implemented backprop through time, which was definitely the hardest part, had a few off-by-one bugs in the hidden state indexing that took a while to track down.I did a numerical gradient check to double-check the backward pass against finite differences before training it, and realised I forgot to update the bias gradient so it wasn’t training properly.I used adagrad as the matrix updater from the gradients which works by updating the gradients by a smaller and smaller amount each time (I looked it up and apparently it is a good way to do it).I wrote the output function where I give it an input function, and then the model predicts the next character, and then it feeds the output back into the model and repeats for as many characters as I want.I then trained it on Shakespeare text and ran 100k iterations at hidden size 100, took about 2 mins and started outputting vaguely word-shaped gibberish with correct capitalisation and character-name formatting.I then increased the hidden size from 100 to 256 and trained it more, and it still looks like gibberish but improved a bit, some of the output is what you can see in the screenshot."}]...
|
Title: Recurrent Neural Network by @crazydave | St Title: Recurrent Neural Network by @crazydave | Stardance
Devlogs:
I am making a recurrent neural network from scratch in python using numpy, trained on Shakespeare text to generate character-by-character in his style.This is an improvement on the previous neural network that I made as it keeps a memory based on the things it has recently seen, so it’s next prediction depends on what it has previously seen which will hopefully make it be able to learn more advanced patterns.I added loading and chunking of data, so basically it takes in a text file, and then it splits it into chunks (I use 25 character long chunks) in pairs with one shifted across by one and saves it as input and targets.I wrote the forward pass, loops through each character in a chunk, updates a hidden state with tanh, then a softmax over the vocab to predict the next character.I implemented backprop through time, which was definitely the hardest part, had a few off-by-one bugs in the hidden state indexing that took a while to track down.I did a numerical gradient check to double-check the backward pass against finite differences before training it, and realised I forgot to update the bias gradient so it wasn’t training properly.I used adagrad as the matrix updater from the gradients which works by updating the gradients by a smaller and smaller amount each time (I looked it up and apparently it is a good way to do it).I wrote the output function where I give it an input function, and then the model predicts the next character, and then it feeds the output back into the model and repeats for as many characters as I want.I then trained it on Shakespeare text and ran 100k iterations at hidden size 100, took about 2 mins and started outputting vaguely word-shaped gibberish with correct capitalisation and character-name formatting.I then increased the hidden size from 100 to 256 and trained it more, and it still looks like gibberish but improved a bit, some of the output is what you can see in the screenshot.
I updated the rnn to support multiple hidden layers, as previously it had a single layer, so I had to update the forward and backwards passes as well as the adagrad to account for the multiple layers. I started off with two and tested it with a hidden size of 256, but I didn’t see any improvement, however I didn’t train it for as long. I am now in the process of implementing a variable number of layers from 1 to any number, so that the model can learn greater complexity, however this comes at the cost of much slower training. Currently the training on 2 layers is a decent slowdown compared to with 1 layer, as i also increased hidden size to 512. So far I have made the forward pass work for multiple layers (greater than 2) but the rest of it still only supports 2 layers.
I did multiple training sessions and tweaked the learning rate, as after training with more layers and complexity, the model ended up with a much worse rate. I tried decreasing the learning rate and that led to a much better result. I then implemented something which reduces the learning rate over time, so that hopefully it will not plateau. I am thinking that to get to more levels of complexity in terms of producing actual content i will need to turn it into a LSTM, which has long and short memory. I am going to train it for a while now with the update and see how it goes.
After training it with the updated code, the output was terrible although the error was much lower, so I was really confused. I wasn’t sure what went wrong, and it took me a very long time to figure it out. When training, I feed in the previous step’s memory back into it and in training the memory is never wiped each epoch. However, when testing the output, I initialised it with a memory of just zeros, which it had barely experienced training with so wasn’t able to output meaningful things. I was able to fix it by initialising its memory on the training text itself to give it a memory state it is used to and that fixed it. You can see an output from it below.
Added some code so that users can pass in arguments. I also spent a while trying to set up the releases page using github actions, and I used claude to make the github actions script for me (none of this went towards logged hours as it wasn’t in the IDE), but I finally got the releases to work (ignore the 1.0.4, I was trying to get it to work). I had three problems. One of them was that I accidentally named the “github” folder “github” (without the dot) so it wasn’t correctly running as an action. Another problem was pyinstaller using relative paths but remembered the same thing happened to me on my last project so i just used the same fix. The final problem was that my model checkpoint file somehow got deleted and it was needed for the Github actions but I had another copy so I put it back into the project and committed it, and it finally worked. I also got Al to help me write the README as it is boring to do. It will be shipped shortly so please check it out. (also dont mind the screenshot below being a screenshot of stardance, when I tried to post this, the site froze, so I screenshotted it first to make sure I didn’t lose it, and then it broke so I did it again).
Ships:
I made a recurrent neural network from scratch in Python using numpy, which generates text one character at a time in the style of Shakespeare. Because it keeps a memory of what it has recently seen, it learnt capitalisation, line breaks, punctuation, character-name formatting and roughly what English words look like, starting from nothing but the raw text, which I think is super cool! The most challenging part of this project was getting it to produce good output, first through backpropagation through time, where off-by-one bugs in the hidden state indexing and a bias gradient I forgot to update meant it wasn’t training properly, and then after training it with more layers, the error was much lower but the output was terrible, which took me a very long time to figure out. It turned out the model had barely ever seen a blank memory during training, so I fixed it by building up its memory on some text before it starts generating. I also added command line arguments to the code so that people can generate text or train their own model in their terminal without editing the python file. To test it, follow the install instructions on the README, you can either download the python code and run that, or download the compiled versions in the releases page on Github....
|
1793170116.8198957
|
1793256516.8198957
|
|
54817
|
tinyapper by @craisin | Stardance
|
craisin
|
2
|
32.0
|
541
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-26T07:19:18Z", "hours": 14.0, "multiplier": 16.51, "payout": 225, "blessing": "neutral", "text": "| Hi stardance! Please make sure to try both demos out at https://tinyapper.craisin.tech and https://yapperpedia.craisin.tech . Additionally, tinyapper can be kinda slow (no GPU in my server unfortunately) and dumb (it is severely undertrained), please be patient and understand that these are silly proof of concept models! Tinyapper 2.0.0 More Tinyapper, the LLM trained from scratch! This time the model is trained to be fully conversational with user, assistant, and eos tokens, along with a session attached KV cache. Tech Changes New conversational demo at tinyapper.craisin.tech Updated attention conditional for multiple infills for chat Updated KV cache so chats can be cached Reiterated how datasets are made Retrained model for yapperpedia so the model is slightly more coherent Future Development Standardizing datasets to use memmap for larger datasets Retrain conversational model Fine tune the model While this will probably be the last of me working on this project for Stardance, I’ll definitely work on this more in my own time. Keep an eye on the Github for updates if you are interested, stars and follows there are noticed and appreciated!", "repo": "https://github.com/craisined/tinyapper", "demo": "https://tinyapper.craisin.tech"}, {"ship_num": 2, "ts": "2026-09-04T02:19:11Z", "hours": 18.0, "multiplier": 17.57, "payout": 316, "blessing": "neutral", "text": "Tinyapper 1.0.0 The first release for Tinyapper, the tiny LLM built from scratch! It so far still only exists as a pretrained transformer, I hope to finetune v2 using a dataset for alpaca. A lot of time was spent cleaning up yapperpedia , the demo I created to generate incoherent Wikipedia articles. However, a lot of time was also spent making the code accessible and modular, as I want to further build on this project and encourage others to understand machine learning fundamentals as well. If you are interested, check out local.ipynb ! Tech 50M parameter pretrained transformer model trained on wikitext recreating transformer architecture similar to GPT-2 Flask backend with plain HTML, CSS, and JS website showing the abilities of Tinyapper Struggles KV caching and embedding: I tried for too long to create a looping cache, but that was both slow and impractical to do at the current state of this project Streaming: Getting the stream sent over without bugs and glitches was a giant headache! Future Development Tuning the language to be conversational Creating a context independent KV cache Increasing model size", "repo": "https://github.com/craisined/tinyapper", "demo": "https://tinyapper.craisin.tech"}]...
|
[{"post_id": 73871, "ts": "202 [{"post_id": 73871, "ts": "2026-09-26T07:08:29Z", "hours": 2.2133, "text": "Devlog 11: Cleaned this up a bit more, adding session attached KV caching and more polish for one last ship. School + apps is getting busy, so I think this will be my final devlog. TYSM stardancers, I had lots of fun creating tinyapper"}, {"post_id": 67900, "ts": "2026-09-14T06:24:14Z", "hours": 3.3714, "text": "Devlog 10 : Created the website for my chatbot! Other than retraining, I think the last steps for me look like implementing a session attached KV cache. 2.0 soon :D"}, {"post_id": 63883, "ts": "2026-09-07T21:45:56Z", "hours": 2.5372, "text": "Devlog 9 : An epoch of ultrachat finished faster than I thought it would… tinyapper really likes chocolate chip cocktails I guess 😭. Looping and other problems are getting really prevalent, I think I’m hitting the limit for a 50M model."}, {"post_id": 63653, "ts": "2026-09-07T16:01:37Z", "hours": 5.5247, "text": "Pre devlog thank you: You guys really did fund my cloud credit, 17.57x multiplier for my first ship on this is crazy! I read through the feedback, my plan now is to use Stardust for cloud credit (pending order) to properly pretrain the model and finetune it using Ultrachat (I hear yall :3). Thanks for all the support and suggestions here and on Slack, it really motivates me to keep coding <3 Ship 1.0.1 (Devlog 8) : Implemented variable learning rate: in theory lets the model hit slightly lower numbers and train longer Added a validation split and test: long overdue lol Added data processing and support for Ultrachat: allows me to circumvent processing data on the cloud Added L4 settings for cloud: yes I’m getting ready to train on the cloud Updating docker container to not include a model + other random stuff: volume mount on runtime to prevent pulling 2gb from ghcr every update Retrained model: WE BEAT OPENAI RAHHHH (from 7 years ago), we are now at 3.09 nats (for validation too, which is a better metric)! For reference, GPT 2 small gets a loss of 3.4 nats when evaluated without extra training on the same dataset (we don’t talk about the fine tuning results)"}, {"post_id": 61232, "ts": "2026-09-04T02:04:05Z", "hours": 1.2639, "text": "Devlog 7: I optimized streaming! Not only that, my mini PC has integrated graphics that apparently makes LLM go zoom, so I got a really large unanticipated speed boost :0. I got to increase the generated tokens all the way to near max, so y’all can get more gibberish faster! Going to ship this version :)"}, {"post_id": 61186, "ts": "2026-09-04T00:11:05Z", "hours": 4.3519, "text": "Devlog 6: After all this time… my frontend is the exact same! It’s a lot faster though! I spent a lot of time trying to optimize my model, from KV Caches to RoPE and quantization. Overall, KV caching and streaming text seems to give the best experience, so that’s what I went with. Seeing if I can deploy to nest or further optimize streaming…"}, {"post_id": 60078, "ts": "2026-09-02T06:33:28Z", "hours": 2.7022, "text": "Devlog 5 : Finally implemented a cache… now I just have to rewrite my attention module to work around it…"}, {"post_id": 58575, "ts": "2026-08-31T01:16:47Z", "hours": 1.6464, "text": "Devlog 4 : I tried to get away with not using a KV Cache and ship today… but CPU said no. Considering using cloud to host this until I implement a KV Cache, but I know I should just code one up. Why do LLMs need so much compute"}, {"post_id": 58524, "ts": "2026-08-30T23:19:21Z", "hours": 4.3989, "text": "Devlog #3 : The model is trained! I will fine tune and train it over next week, but I think I want to get a first ship and demo first. Yapperpedia coming soon!"}, {"post_id": 56929, "ts": "2026-08-28T23:10:50Z", "hours": 1.7664, "text": "Devlog 2 : Tinyapper (an llm from scratch) is done with its first train! After an epoch of training it averaged ~3.8 nats/token for training data, which is decently close to GPT 2s 3.62… I hope to turn this into a frivolous Wikipedia article generator this weekend for a first ship this weekend, so get ready for that!"}, {"post_id": 56429, "ts": "2026-08-28T06:08:01Z", "hours": 1.855, "text": "Devlog #1 : Nowadays, LLMs are such a popular technology with a lot of theory, but very few people seem to have implemented one. I wanted to create my own LLM to tinker with on my own, and so far cross entropy seems to be approaching human language! Wish me luck <3"}]...
|
Title: tinyapper by @craisin | Stardance
Devlogs: Title: tinyapper by @craisin | Stardance
Devlogs:
Devlog #1 : Nowadays, LLMs are such a popular technology with a lot of theory, but very few people seem to have implemented one. I wanted to create my own LLM to tinker with on my own, and so far cross entropy seems to be approaching human language! Wish me luck <3
Devlog 2 : Tinyapper (an llm from scratch) is done with its first train! After an epoch of training it averaged ~3.8 nats/token for training data, which is decently close to GPT 2s 3.62… I hope to turn this into a frivolous Wikipedia article generator this weekend for a first ship this weekend, so get ready for that!
Devlog #3 : The model is trained! I will fine tune and train it over next week, but I think I want to get a first ship and demo first. Yapperpedia coming soon!
Devlog 4 : I tried to get away with not using a KV Cache and ship today… but CPU said no. Considering using cloud to host this until I implement a KV Cache, but I know I should just code one up. Why do LLMs need so much compute
Devlog 5 : Finally implemented a cache… now I just have to rewrite my attention module to work around it…
Devlog 6: After all this time… my frontend is the exact same! It’s a lot faster though! I spent a lot of time trying to optimize my model, from KV Caches to RoPE and quantization. Overall, KV caching and streaming text seems to give the best experience, so that’s what I went with. Seeing if I can deploy to nest or further optimize streaming…
Devlog 7: I optimized streaming! Not only that, my mini PC has integrated graphics that apparently makes LLM go zoom, so I got a really large unanticipated speed boost :0. I got to increase the generated tokens all the way to near max, so y’all can get more gibberish faster! Going to ship this version :)
Pre devlog thank you: You guys really did fund my cloud credit, 17.57x multiplier for my first ship on this is crazy! I read through the feedback, my plan now is to use Stardust for cloud credit (pending order) to properly pretrain the model and finetune it using Ultrachat (I hear yall :3). Thanks for all the support and suggestions here and on Slack, it really motivates me to keep coding <3 Ship 1.0.1 (Devlog 8) : Implemented variable learning rate: in theory lets the model hit slightly lower numbers and train longer Added a validation split and test: long overdue lol Added data processing and support for Ultrachat: allows me to circumvent processing data on the cloud Added L4 settings for cloud: yes I’m getting ready to train on the cloud Updating docker container to not include a model + other random stuff: volume mount on runtime to prevent pulling 2gb from ghcr every update Retrained model: WE BEAT OPENAI RAHHHH (from 7 years ago), we are now at 3.09 nats (for validation too, which is a better metric)! For reference, GPT 2 small gets a loss of 3.4 nats when evaluated without extra training on the same dataset (we don’t talk about the fine tuning results)
Devlog 9 : An epoch of ultrachat finished faster than I thought it would… tinyapper really likes chocolate chip cocktails I guess 😭. Looping and other problems are getting really prevalent, I think I’m hitting the limit for a 50M model.
Devlog 10 : Created the website for my chatbot! Other than retraining, I think the last steps for me look like implementing a session attached KV cache. 2.0 soon :D
Devlog 11: Cleaned this up a bit more, adding session attached KV caching and more polish for one last ship. School + apps is getting busy, so I think this will be my final devlog. TYSM stardancers, I had lots of fun creating tinyapper
Ships:
Tinyapper 1.0.0 The first release for Tinyapper, the tiny LLM built from scratch! It so far still only exists as a pretrained transformer, I hope to finetune v2 using a dataset for alpaca. A lot of time was spent cleaning up yapperpedia , the demo I created to generate incoherent Wikipedia articles. However, a lot of time was also spent making the code accessible and modular, as I want to further build on this project and encourage others to understand machine learning fundamentals as well. If you are interested, check out local.ipynb ! Tech 50M parameter pretrained transformer model trained on wikitext recreating transformer architecture similar to GPT-2 Flask backend with plain HTML, CSS, and JS website showing the abilities of Tinyapper Struggles KV caching and embedding: I tried for too long to create a looping cache, but that was both slow and impractical to do at the current state of this project Streaming: Getting the stream sent over without bugs and glitches was a giant headache! Future Development Tuning the language to be conversational Creating a context independent KV cache Increasing model size
| Hi stardance! Please make sure to try both demos out at https://tinyapper.craisin.tech and https://yapperpedia.craisin.tech . Additionally, tinyapper can be kinda slow (no GPU in my server unfortunately) and dumb (it is severely undertrained), please be patient and understand that these are silly proof of concept models! Tinyapper 2.0.0 More Tinyapper, the LLM trained from scratch! This time the model is trained to be fully conversational with user, assistant, and eos tokens, along with a session attached KV cache. Tech Changes New conversational demo at tinyapper.craisin.tech Updated attention conditional for multiple infills for chat Updated KV cache so chats can be cached Reiterated how datasets are made Retrained model for yapperpedia so the model is slightly more coherent Future Development Standardizing datasets to use memmap for larger datasets Retrain conversational model Fine tune the model While this will probably be the last of me working on this project for Stardance, I’ll definitely work on this more in my own time. Keep an eye on the Github for updates if you are interested, stars and follows there are noticed and appreciated!...
|
1793098410.4774327
|
1793184810.4774327
|
|
61912
|
Pyrecall by @atharvranjan8 | Stardance
|
atharvranjan8
|
1
|
32.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-13T19:08:28Z", "hours": 32.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built Pyrecall, a Python tool that detects “forgetting” in fine-tuned LLMs and lets you roll back to a previous skill snapshot if fine-tuning hurts performance. It works by taking snapshots of a model (as LoRA/QLoRA adapters) before and after training, then benchmarking the model across multiple categories using log-likelihood scoring to flag any categories that dropped below a set threshold. It supports any model on Hugging Face Hub and ships as a pip-installable package with both a Python API and a CLI (pyrecall init, snapshot, learn, check). What was challenging? Designing a benchmarking approach that could reliably detect meaningful regressions across diverse task categories without being too noisy or too slow to run after every fine-tuning job. Balancing adapter storage (LoRA/QLoRA) so snapshots stay lightweight was also tricky. What are you proud of? Getting an end-to-end workflow — snapshot, fine-tune, check — working smoothly with a simple CLI, so anyone fine-tuning a model can catch catastrophic forgetting before it ships. What do people need to know to test your project? Install with pip install pyrecall Run pyrecall init to set things up Take a baseline snapshot: pyrecall snapshot baseline Fine-tune and snapshot after: pyrecall learn train.jsonl –snapshot-after after_training Run pyrecall check to compare the two snapshots and see if any benchmark categories regressed See examples/basic_workflow.py in the repo for a full example, and the docs at pyrecall.github.io/Pyrecall", "repo": "https://github.com/Pyrecall/Pyrecall", "demo": "https://pyrecall.github.io/Pyrecall/"}]...
|
[{"post_id": 67603, "ts": "202 [{"post_id": 67603, "ts": "2026-09-13T19:02:43Z", "hours": 31.8378, "text": "Started Pyrecall to catch something that was bugging me: every time you fine-tune a model, it can quietly forget stuff it used to know, and nobody notices until much later. First goal was just snapshot → train → check working end to end. [Add: what broke first, how long it took to get a snapshot working]. Screenshot: CLI output from an early pyrecall check run."}]...
|
Title: Pyrecall by @atharvranjan8 | Stardance
Dev Title: Pyrecall by @atharvranjan8 | Stardance
Devlogs:
Started Pyrecall to catch something that was bugging me: every time you fine-tune a model, it can quietly forget stuff it used to know, and nobody notices until much later. First goal was just snapshot → train → check working end to end. [Add: what broke first, how long it took to get a snapshot working]. Screenshot: CLI output from an early pyrecall check run.
Ships:
I built Pyrecall, a Python tool that detects “forgetting” in fine-tuned LLMs and lets you roll back to a previous skill snapshot if fine-tuning hurts performance. It works by taking snapshots of a model (as LoRA/QLoRA adapters) before and after training, then benchmarking the model across multiple categories using log-likelihood scoring to flag any categories that dropped below a set threshold. It supports any model on Hugging Face Hub and ships as a pip-installable package with both a Python API and a CLI (pyrecall init, snapshot, learn, check). What was challenging? Designing a benchmarking approach that could reliably detect meaningful regressions across diverse task categories without being too noisy or too slow to run after every fine-tuning job. Balancing adapter storage (LoRA/QLoRA) so snapshots stay lightweight was also tricky. What are you proud of? Getting an end-to-end workflow — snapshot, fine-tune, check — working smoothly with a simple CLI, so anyone fine-tuning a model can catch catastrophic forgetting before it ships. What do people need to know to test your project? Install with pip install pyrecall Run pyrecall init to set things up Take a baseline snapshot: pyrecall snapshot baseline Fine-tune and snapshot after: pyrecall learn train.jsonl –snapshot-after after_training Run pyrecall check to compare the two snapshots and see if any benchmark categories regressed See examples/basic_workflow.py in the repo for a full example, and the docs at pyrecall.github.io/Pyrecall...
|
1793209851.8087842
|
1793296251.8087842
|
|
62505
|
Korasa by @abdelkhaliq | Stardance
|
abdelkhaliq
|
1
|
32.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T20:12:36Z", "hours": 32.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "An app that helps me and 20 other users to store questions we worry about forgetting in the future, but now we never will!, I faced a lot of challenges building the mobile app honestly as I never had any prior experience in mobile development, but it turned out to be easy using react native, try this project out urself!", "repo": "https://github.com/abde1khaliq/Korasa", "demo": "https://www.korasa.study/"}]...
|
[{"post_id": 68709, "ts": "202 [{"post_id": 68709, "ts": "2026-09-15T16:17:08Z", "hours": 0.3333, "text": "Added the Forgot password functionality to the website version as it used to only exist on the mobile application."}, {"post_id": 68681, "ts": "2026-09-15T15:12:45Z", "hours": 31.755, "text": "Korasa was made before shipping to Stardance, thus it doesn’t include any devlogs but i’ll make sure I start adding dev logs to it when adding new features"}]...
|
Title: Korasa by @abdelkhaliq | Stardance
Devlogs Title: Korasa by @abdelkhaliq | Stardance
Devlogs:
Korasa was made before shipping to Stardance, thus it doesn’t include any devlogs but i’ll make sure I start adding dev logs to it when adding new features
Added the Forgot password functionality to the website version as it used to only exist on the mobile application.
Ships:
An app that helps me and 20 other users to store questions we worry about forgetting in the future, but now we never will!, I faced a lot of challenges building the mobile app honestly as I never had any prior experience in mobile development, but it turned out to be easy using react native, try this project out urself!...
|
1793210039.8109317
|
1793296439.8109317
|
|
64313
|
MINERVA-8 by @sudeepsuresh | Stardance
|
sudeepsuresh
|
1
|
32.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-04T04:16:22Z", "hours": 32.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What did I build? I built MINERVA-8, a custom console-based 8-bit assembler written entirely from scratch in C++. MINERVA-8 emulates a complete low level computer system from the command line. It has registers, a hardware stack pointer, flags (CF & ZF), 256 bytes of simulated memory, and full CPU emulation. There is also a compiler which converts assembly code with symbolic names to machine instructions. Implemented in C++. What Was Challenging? There were quite a few issues that I ran into when running assembly programs but they were fixable using my ‘step’ flag and watching the CPU states(flags/registers). However, one major hurdle I encountered with forward labels was that my assembler did not support jumping to an undefined label that wasn’t declared yet(forward jumps) used in JMP, CALL, JZ, and JNZ instructions. I could not solve this problem until I learned during my C++ class how V-tables are created during compile time. Thus, I decided on an “unresolved array” which would store the label and not have a resolved address which would be patched later when the label is actually found. My dad also suggested a two pass assembler would be more elegant. During the first pass all labels can be resolved and during the second pass the machine code can be generated. I chose to keep the single pass design because it produced a faster assembler despite requiring a small tracking array. What are you proud of? I am more satisfied than being proud of building a functional hardware stack infrastructure capable of handling nested subroutines using low-level PUSH, POP, CALL, and RET commands. It was amazing to watch a processor simulator I wrote entirely by hand successfully use stack memory to jump into subroutines, run math operations, and bounce back to the main program loop cleanly without crashing or corrupting memory boundaries. How to Test My Project Go to https://github.com/sudeeps-projects/Minerva-8/blob/master/README.md look for the section Quick Start & Usage It describes how to test my project The compiled executable MINERVA-8.exe is located inside the release folder of this repository. General Usage Open your command prompt, navigate to the release folder, and run the executable with your assembly file and optional flags: MINERVA-8.exe <filename.asm> [options] Parameters & Options filename.asm (Required): The path to the MINERVA-8 assembly file you want to execute. –step (Optional): Step Mode. Displays the current CPU state and next instruction, then waits for ENTER before executing the next step. –ram (Optional): RAM Mode. Displays the fully assembled machine code stored in the 256-byte RAM. Command Examples Standard Execution MINERVA-8.exe DEC.asm Running Step Mode MINERVA-8.exe DEC.asm –step Running RAM Mode MINERVA-8.exe DEC.asm –ram Combining Step and RAM Modes The optional flags can be supplied together in any order: MINERVA-8.exe DEC.asm –step –ram OR MINERVA-8.exe DEC.asm –ram –step Look at my youtube channel on this topic: https://www.youtube.com/watch?v=7CmpW0mE3cQ", "repo": "https://github.com/sudeeps-projects/Minerva-8", "demo": "https://github.com/sudeeps-projects/Minerva-8/releases/download/v1.0.0/MINERVA-8.exe"}]...
|
[{"post_id": 76481, "ts": "202 [{"post_id": 76481, "ts": "2026-10-03T17:57:24Z", "hours": 3.2692, "text": "over the last few weeks, I have been working on many test cases.. I have added many negative test cases where I try to pop from an empty stack or ‘ret’ instruction without a call. I found many issues that i fixed in the last few weeks. I have also written a fibonacci series using my instruction set and have been successfully able to ‘OUT’ the result to console. This has been my most proud activity. It took me 4-5 days to come up with fibonacci flow as I was hand-calculating the output using my instructions. When I tried it , i was getting wrong answers. My step flag helped me debug the flow and eventually I could come up with correct fibonacci instruction flow. I have put many examples in the release folder. In the release folder, I have put Minerva-8.exe which takes the file name <fibonacci.asm> as an argument. It also takes additional optional arguments such as [–step | –ram] . The –step argument provides the user with the ability to debug instruction by instruction flow and shows the CPU state after execution of every instruction. This helped me debug my own fibonacci.asm which took quite a bit of time. Also, I have struggling with logging hours on hackatime. My github is on [email protected] account and i logged to hackatime using [email protected] . Using the help from slack and some from Google , I tried to link both the emails but it is still not clear on why it shows 0hours when hackatime clearly logged 30hrs for Minerva-8 and 1:30 hrs for compiler"}, {"post_id": 71568, "ts": "2026-09-21T02:15:40Z", "hours": 28.5417, "text": "In my 10th grade Summer, I took C++ course in Folsom Lake Community College. The Professor was teaching about how C++ code gets converted to Assembly language, how the assembler converts the Assembly instructions into Machine code then the CPU will execute the machine code. I got confused and asked my friends on what that means. My friends did not know it either. At home, my dad explained with a block diagram. I got more curious about the innerworkings and read the documentation of RISC-V instruction set. This led me to come up with MINERVA-8 a custom CPU 8 bit architecture. MINERVA-8 MINERVA-8 (CUSTOM 8-BIT ASSEMBLY LANGUAGE) is a console-based 8-bit CPU simulator written in C++ that demonstrates how a processor executes instructions through the fetch-decode-execute cycle while showing changes to registers, memory, flags, and control flow. The project includes a custom assembler that translates MINERVA-8 assembly language into machine code and loads the resulting instructions and data into 256 bytes of simulated RAM. Architecture MINERVA-8 currently includes: 8-bit CPU architecture 256 bytes of RAM Program Counter (PC) Register A Register B Carry Flag (CF) Zero Flag (ZF) Custom instruction set Custom assembler Symbolic labels Console display of CPU state and memory Numeric and character console output Fetch-Decode-Execute Cycle Fetch The fetch unit uses the Program Counter to retrieve the next opcode from RAM. Decode The decoding unit determines which instruction the opcode represents and identifies any associated operand or memory address. Execute The execution unit performs the requested operation. Depending on the instruction, it can: modify registers perform arithmetic perform bitwise logic update CPU flags load or store memory change program control flow output values or characters Instruction Set Instruction Description LDA Load a value into Register A LDB Load a value into Register B LDM Load a value from memory into Register A ADD Add Register B to Register A SUB Subtract Register B from Register A STA Store Register A in memory OUT Output Register A as a number OUTC Output Register A as an ASCII character JNZ Jump if the Zero Flag is not set JZ Jump if the Zero Flag is set JMP Unconditional jump AND Bitwise AND of Register A and Register B OR Bitwise OR of Register A and Register B XOR Bitwise XOR of Register A and Register B SHL Shift Register A left by one bit SHR Shift Register A right by one bit NOT Invert every bit in Register A INC Increment Register A DEC Decrement Register A CMP Compare Register A and Register B and update flags PUSH Push Register A contents to stack POP Pop stack into Reg A and update flags CALL Call subroutine RET Return from subroutine to the caller HLT Halt execution"}]...
|
Title: MINERVA-8 by @sudeepsuresh | Stardance
Dev Title: MINERVA-8 by @sudeepsuresh | Stardance
Devlogs:
In my 10th grade Summer, I took C++ course in Folsom Lake Community College. The Professor was teaching about how C++ code gets converted to Assembly language, how the assembler converts the Assembly instructions into Machine code then the CPU will execute the machine code. I got confused and asked my friends on what that means. My friends did not know it either. At home, my dad explained with a block diagram. I got more curious about the innerworkings and read the documentation of RISC-V instruction set. This led me to come up with MINERVA-8 a custom CPU 8 bit architecture. MINERVA-8 MINERVA-8 (CUSTOM 8-BIT ASSEMBLY LANGUAGE) is a console-based 8-bit CPU simulator written in C++ that demonstrates how a processor executes instructions through the fetch-decode-execute cycle while showing changes to registers, memory, flags, and control flow. The project includes a custom assembler that translates MINERVA-8 assembly language into machine code and loads the resulting instructions and data into 256 bytes of simulated RAM. Architecture MINERVA-8 currently includes: 8-bit CPU architecture 256 bytes of RAM Program Counter (PC) Register A Register B Carry Flag (CF) Zero Flag (ZF) Custom instruction set Custom assembler Symbolic labels Console display of CPU state and memory Numeric and character console output Fetch-Decode-Execute Cycle Fetch The fetch unit uses the Program Counter to retrieve the next opcode from RAM. Decode The decoding unit determines which instruction the opcode represents and identifies any associated operand or memory address. Execute The execution unit performs the requested operation. Depending on the instruction, it can: modify registers perform arithmetic perform bitwise logic update CPU flags load or store memory change program control flow output values or characters Instruction Set Instruction Description LDA Load a value into Register A LDB Load a value into Register B LDM Load a value from memory into Register A ADD Add Register B to Register A SUB Subtract Register B from Register A STA Store Register A in memory OUT Output Register A as a number OUTC Output Register A as an ASCII character JNZ Jump if the Zero Flag is not set JZ Jump if the Zero Flag is set JMP Unconditional jump AND Bitwise AND of Register A and Register B OR Bitwise OR of Register A and Register B XOR Bitwise XOR of Register A and Register B SHL Shift Register A left by one bit SHR Shift Register A right by one bit NOT Invert every bit in Register A INC Increment Register A DEC Decrement Register A CMP Compare Register A and Register B and update flags PUSH Push Register A contents to stack POP Pop stack into Reg A and update flags CALL Call subroutine RET Return from subroutine to the caller HLT Halt execution
over the last few weeks, I have been working on many test cases.. I have added many negative test cases where I try to pop from an empty stack or ‘ret’ instruction without a call. I found many issues that i fixed in the last few weeks. I have also written a fibonacci series using my instruction set and have been successfully able to ‘OUT’ the result to console. This has been my most proud activity. It took me 4-5 days to come up with fibonacci flow as I was hand-calculating the output using my instructions. When I tried it , i was getting wrong answers. My step flag helped me debug the flow and eventually I could come up with correct fibonacci instruction flow. I have put many examples in the release folder. In the release folder, I have put Minerva-8.exe which takes the file name <fibonacci.asm> as an argument. It also takes additional optional arguments such as [–step | –ram] . The –step argument provides the user with the ability to debug instruction by instruction flow and shows the CPU state after execution of every instruction. This helped me debug my own fibonacci.asm which took quite a bit of time. Also, I have struggling with logging hours on hackatime. My github is on [email protected] account and i logged to hackatime using [email protected] . Using the help from slack and some from Google , I tried to link both the emails but it is still not clear on why it shows 0hours when hackatime clearly logged 30hrs for Minerva-8 and 1:30 hrs for compiler
Ships:
What did I build? I built MINERVA-8, a custom console-based 8-bit assembler written entirely from scratch in C++. MINERVA-8 emulates a complete low level computer system from the command line. It has registers, a hardware stack pointer, flags (CF & ZF), 256 bytes of simulated memory, and full CPU emulation. There is also a compiler which converts assembly code with symbolic names to machine instructions. Implemented in C++. What Was Challenging? There were quite a few issues that I ran into when running assembly programs but they were fixable using my ‘step’ flag and watching the CPU states(flags/registers). However, one major hurdle I encountered with forward labels was that my assembler did not support jumping to an undefined label that wasn’t declared yet(forward jumps) used in JMP, CALL, JZ, and JNZ instructions. I could not solve this problem until I learned during my C++ class how V-tables are created during compile time. Thus, I decided on an “unresolved array” which would store the label and not have a resolved address which would be patched later when the label is actually found. My dad also suggested a two pass assembler would be more elegant. During the first pass all labels can be resolved and during the second pass the machine code can be generated. I chose to keep the single pass design because it produced a faster assembler despite requiring a small tracking array. What are you proud of? I am more satisfied than being proud of building a functional hardware stack infrastructure capable of handling nested subroutines using low-level PUSH, POP, CALL, and RET commands. It was amazing to watch a processor simulator I wrote entirely by hand successfully use stack memory to jump into subroutines, run math operations, and bounce back to the main program loop cleanly without crashing or corrupting memory boundaries. How to Test My Project Go to https://github.com/sudeeps-projects/Minerva-8/blob/master/README.md look for the section Quick Start & Usage It describes how to test my project The compiled executable MINERVA-8.exe is located inside the release folder of this repository. General Usage Open your command prompt, navigate to the release folder, and run the executable with your assembly file and optional flags: MINERVA-8.exe <filename.asm> [options] Parameters & Options filename.asm (Required): The path to the MINERVA-8 assembly file you want to execute. –step (Optional): Step Mode. Displays the current CPU state and next instruction, then waits for ENTER before executing the next step. –ram (Optional): RAM Mode. Displays the fully assembled machine code stored in the 256-byte RAM. Command Examples Standard Execution MINERVA-8.exe DEC.asm Running Step Mode MINERVA-8.exe DEC.asm –step Running RAM Mode MINERVA-8.exe DEC.asm –ram Combining Step and RAM Modes The optional flags can be supplied together in any order: MINERVA-8.exe DEC.asm –step –ram OR MINERVA-8.exe DEC.asm –ram –step Look at my youtube channel on this topic: https://www.youtube.com/watch?v=7CmpW0mE3cQ...
|
1793213550.6021
|
1793299950.6021
|
|
64496
|
Spaceboard by @alepar_cs | Stardance
|
alepar_cs
|
1
|
32.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-10T14:58:08Z", "hours": 32.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is spaceboard. A really cool TUI dashboard to visualize data about NEOs (Near Earth Objects) with NASA API keys. Is my first project for Hack Club and my first Python package. I know it isn’t perfect, but I’m working on a V2. I’m really proud of this because I didn’t only learn a lot of new things about how to code better - but also how to ship a project and how it feels to make part of an amazing community, that helped me when I had problems. View more on: https://github.com/alessioparolini2011/spaceboard", "repo": "https://github.com/alessioparolini2011/spaceboard", "demo": "https://pypi.org/project/spaceboard/"}]...
|
[{"post_id": 78346, "ts": "202 [{"post_id": 78346, "ts": "2026-10-10T14:50:05Z", "hours": 2.5511, "text": "spaceboard V1.1.8 is done and ready for shipping! Use “pip install spaceboard” and then “spaceboard” to use it! I know isn’t perfect, but the V2 development is moved into “Terra” event. I hope you’ll enjoy it!"}, {"post_id": 77872, "ts": "2026-10-08T16:51:12Z", "hours": 0.7636, "text": "Ready for shipping! I add the pyproject.toml for a easier use and installation, and create a GitHub release for the DEMO."}, {"post_id": 77314, "ts": "2026-10-06T15:02:12Z", "hours": 5.0161, "text": "Final devlog! I finished the MVP, now I’ll work on a v2 with a better file structure, a easier scalable architecture and more features!"}, {"post_id": 76256, "ts": "2026-10-02T22:26:21Z", "hours": 3.8028, "text": "Finished MVP! Now you can move between days and change the metric system smoothly! I’ve optmized the logic and fixed some graphical errors. Next steps: add error handling and improve onboarding and requets."}, {"post_id": 75984, "ts": "2026-10-01T20:43:52Z", "hours": 6.0408, "text": "Now you can move through the days. Need to add a label to see the current day on the screen. Really close to ship!"}, {"post_id": 74924, "ts": "2026-09-28T16:31:57Z", "hours": 3.3128, "text": "Improved logic and CLI! Now the datatables are created only one time and reused. Now CLI is more readable."}, {"post_id": 74119, "ts": "2026-09-26T18:30:52Z", "hours": 1.8628, "text": "Now works with double system Metric/US! Fixed also some little bugs. Stay tuned, soon will be added date changes!"}, {"post_id": 73702, "ts": "2026-09-25T18:54:24Z", "hours": 2.1567, "text": "Finished the MVP! Now works with current day and can refresh data!"}, {"post_id": 73176, "ts": "2026-09-24T15:10:59Z", "hours": 3.3806, "text": "Added CLI and implemented it in the main file!"}, {"post_id": 72664, "ts": "2026-09-23T13:34:08Z", "hours": 0.6333, "text": "Implementing classes to store NEOs stats"}, {"post_id": 72651, "ts": "2026-09-23T12:46:54Z", "hours": 2.0164, "text": "Successfully gets data from NASA API! Now Working on store datas correctly"}]...
|
Title: Spaceboard by @alepar_cs | Stardance
Devlo Title: Spaceboard by @alepar_cs | Stardance
Devlogs:
Successfully gets data from NASA API! Now Working on store datas correctly
Implementing classes to store NEOs stats
Added CLI and implemented it in the main file!
Finished the MVP! Now works with current day and can refresh data!
Now works with double system Metric/US! Fixed also some little bugs. Stay tuned, soon will be added date changes!
Improved logic and CLI! Now the datatables are created only one time and reused. Now CLI is more readable.
Now you can move through the days. Need to add a label to see the current day on the screen. Really close to ship!
Finished MVP! Now you can move between days and change the metric system smoothly! I’ve optmized the logic and fixed some graphical errors. Next steps: add error handling and improve onboarding and requets.
Final devlog! I finished the MVP, now I’ll work on a v2 with a better file structure, a easier scalable architecture and more features!
Ready for shipping! I add the pyproject.toml for a easier use and installation, and create a GitHub release for the DEMO.
spaceboard V1.1.8 is done and ready for shipping! Use “pip install spaceboard” and then “spaceboard” to use it! I know isn’t perfect, but the V2 development is moved into “Terra” event. I hope you’ll enjoy it!
Ships:
This is spaceboard. A really cool TUI dashboard to visualize data about NEOs (Near Earth Objects) with NASA API keys. Is my first project for Hack Club and my first Python package. I know it isn’t perfect, but I’m working on a V2. I’m really proud of this because I didn’t only learn a lot of new things about how to code better - but also how to ship a project and how it feels to make part of an amazing community, that helped me when I had problems. View more on: https://github.com/alessioparolini2011/spaceboard...
|
1793213597.1346712
|
1793299997.1346712
|
|
64705
|
BackOS by @aarnavsawa09 | Stardance
|
aarnavsawa09
|
1
|
32.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-05T13:53:01Z", "hours": 32.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Hi everyone! I made a Backrooms-themed webOS. I started this project out with very little experience with programming, following the tutorials in the jams step by step, constantly getting stuck at now obvious errors. I’m really proud of how this project turned out since I only spent ~2 weeks making it and its turned out just as i had envisioned. When I was researching for an idea I found out that the computers in the backrooms have their own OS called BackOS, so I wanted to make my own rendition of that. I decided to add a bit of lore to the project too. My idea was that you find yourself trapped in the backrooms and find this specific computer with messages from a previous explorer which you can use to find out the password for the padlock app and find out what’s hidden. The OS has 7 apps- notes, photos, terminal, tapes, settings, desmiler(minesweeper), and a padlock app. The notes app has messages from a previous strandee. The photos app has a gallery of imagery from different parts of the backrooms. The terminal can be used to run a few commands and the tapes app acts like a cassette player you can listen to 6 different songs on. The settings app allows you to, for example, change the wallpaper. The desmiler app is similar to minesweeper but the mines are replaced by smilers (entities present in the backrooms). Finally, the padlock app is for you to investigate. I hope you enjoy! https://rnav09.github.io/BackOS/", "repo": "https://github.com/rnav09/coolwebos1", "demo": "https://rnav09.github.io/BackOS/"}]...
|
[{"post_id": 77033, "ts": "202 [{"post_id": 77033, "ts": "2026-10-05T13:07:25Z", "hours": 2.5278, "text": "Devlog #11 Helo This will be my final devlog for this project :D. i aligned all of the apps to the left of the sceen, finished making the minesweeper game, left clues around the OS for the keypad app, added whats revealed after the entering the right password into the keypad app, and also wrote the README"}, {"post_id": 76825, "ts": "2026-10-04T18:43:52Z", "hours": 2.8817, "text": "devlog #10 hi i made a game. its just minesweeper but with smilers instead of mines(smilers are backrooms monsters/entities). it works almost exactly like minesweeper. the only difference is that sometimes you might lose on the first click but its 3am and im too tired to worry about it. i also changed the icons of all of the apps.now i just have to make them not look ugly in their arrangement and finish the keypad app. when making the game i did use ai for help explain the logic n maths behind minesweeper (not how its played but how u actually calculate stuff bts). ok byebye"}, {"post_id": 76719, "ts": "2026-10-04T12:30:22Z", "hours": 3.9886, "text": "devlog #9 heloo i made 2 apps, a terminal window for running 7 different commands as well as a settings app where you can choose one of 3 wallpapers, reset the os, change the brightness and some other stuff too. i also used keyframes again to animate the first and third wallpaper while the second one is a video. i spent most of the time just trynna fix bugs with the wallpapers keyframes and deciding whats next for the project. i think the next app ill make is a game so that should be fun to do. also i realized the apps on the left arent aligned so ill have to fix that too. i was thinking about moving them somewhere else anyway. also ill try to find some better icons for the terminal and notes app cuz theyre really sticking out like a sore thumb rn"}, {"post_id": 76424, "ts": "2026-10-03T14:16:29Z", "hours": 1.725, "text": "devlog #8 hi guys i made this cassette app you can listen to songs on (6 tracks from the caretaker-everywhere at the end of time). the reels move using keyframes which is pretty cool imo. i dont really have much else to say apart from how it was rlly annoying to get the audio files into vscode cuz onedrive wouldnt let me for some reason. i used ai to teach me how keyframes work for this one"}, {"post_id": 76317, "ts": "2026-10-03T05:37:16Z", "hours": 3.4342, "text": "devlog #7 helloo i added a cool boot up animation which you can skip by clicking anywhere notes can now be saved as well i also added a photo gallery app which i tried to style like a film contact sheet with 12 pics each with their own descriptions and also fixed how clicking a new icon wouldnt deselect the old one and made some edits to the keypads display"}, {"post_id": 76067, "ts": "2026-10-02T07:39:23Z", "hours": 2.6747, "text": "Devlog #6 Hi! i finally did the 5th jam and i have a few more app ideas, one of which is this keypad app. basically i think im gonna leave hints around the apps for the password and itll lead you to something interesting i dont wanna reveal rn. its functional n the passowrd is 1234 for anyone wondering (ill change it later ofc) apart from that i cleaned up the js n made some functions that i can reuse for other apps. i also split up the main js file into a bunch of smaller files. idk if thats what programmers normally do but yeah. i found organizing my code to be really relaxing. i also fixed the bug where windows would get stuck at the top bar. im pretty proud of myself cuz i managed to do all of ts in <3hrs. in terms of vibecoding the only part i did use ai in was for the loading animation for when you enter the right password."}, {"post_id": 75918, "ts": "2026-10-01T16:38:50Z", "hours": 3.3836, "text": "i made the notes app actually functional. you can type in stuff and it keeps what you typed when you switch tabs. theres a + button to add notes and a - button to delete a tab. the tab youre on also gets highlighted and if theres too many tabs they shrink and go sideways. i also wrote a small journal from someone who found the computer before you, so theres a bit more lore. the image in the welcome window is now a slideshow of different backrooms levels too. this time i mostly wrote the code myself and used ai for hints when i got stuck. It did give me some code directly like some css fixes i still have to fix the window getting trapped in the top bar and finish the 5th jam"}, {"post_id": 75364, "ts": "2026-09-29T20:59:09Z", "hours": 5.0956, "text": "I finished part 4 of the jam and added a notes app. you cant really type notes into it right now (you can just read them) but i wanna make it possible. i also combined some of the functions that were common between the welcome window and the notes app(like closing and opening). i based the notes app off of file explorer cuz i liked the manilla folder tab vibes and i think it goes well with the overall backrooms aesthetic. its still rlly ugly tho so i gotta beautify it too. i used ai to help make the scrambleText function(it makes the note dates and the clock glitch randomly) and explain how if/else and loops work. I also used it to explain certain parts of the jam i didnt understand. i gotta fix the bug where the window gets trapped in the top bar if you pull it up too far as well"}, {"post_id": 72844, "ts": "2026-09-23T21:01:18Z", "hours": 3.7678, "text": "okay I know it doesnt seem like alot considering i worked for nearly 4 hours but tbf i spent an entire hour wondering why my js wouldnt work n eventually give up and use ai just to discover i was supposed to place <script src=\"script.js\"></script> at the end of my html body and not at the very beginning anyways i added a cool movable window from lesson 3 n made the ui a bit prettier Also im guessing time doesnt work in the backrooms so ill have to do something differently with the clock in the top right"}, {"post_id": 72662, "ts": "2026-09-23T13:21:12Z", "hours": 1.8725, "text": "Hi I decided on a theme for my webOS Its gonna be backrooms related. I did some research and apparently theres actually an OS in the lore called BackOS thats found on the computers in the backrooms so that fits in pretty neatly. I studied from lesson 2, made it a bit less ugly(still not pretty tho), and introduced some javascript in the code."}, {"post_id": 72180, "ts": "2026-09-22T12:18:12Z", "hours": 0.3864, "text": "WebOS (name-tbd) This is my first coding project ever so i hope it can become something cool… tbh setting up all of the programs was more difficult than actually writing the code (so far)."}]...
|
Title: BackOS by @aarnavsawa09 | Stardance
Devlog Title: BackOS by @aarnavsawa09 | Stardance
Devlogs:
WebOS (name-tbd) This is my first coding project ever so i hope it can become something cool… tbh setting up all of the programs was more difficult than actually writing the code (so far).
Hi I decided on a theme for my webOS Its gonna be backrooms related. I did some research and apparently theres actually an OS in the lore called BackOS thats found on the computers in the backrooms so that fits in pretty neatly. I studied from lesson 2, made it a bit less ugly(still not pretty tho), and introduced some javascript in the code.
okay I know it doesnt seem like alot considering i worked for nearly 4 hours but tbf i spent an entire hour wondering why my js wouldnt work n eventually give up and use ai just to discover i was supposed to place <script src="script.js"></script> at the end of my html body and not at the very beginning anyways i added a cool movable window from lesson 3 n made the ui a bit prettier Also im guessing time doesnt work in the backrooms so ill have to do something differently with the clock in the top right
I finished part 4 of the jam and added a notes app. you cant really type notes into it right now (you can just read them) but i wanna make it possible. i also combined some of the functions that were common between the welcome window and the notes app(like closing and opening). i based the notes app off of file explorer cuz i liked the manilla folder tab vibes and i think it goes well with the overall backrooms aesthetic. its still rlly ugly tho so i gotta beautify it too. i used ai to help make the scrambleText function(it makes the note dates and the clock glitch randomly) and explain how if/else and loops work. I also used it to explain certain parts of the jam i didnt understand. i gotta fix the bug where the window gets trapped in the top bar if you pull it up too far as well
i made the notes app actually functional. you can type in stuff and it keeps what you typed when you switch tabs. theres a + button to add notes and a - button to delete a tab. the tab youre on also gets highlighted and if theres too many tabs they shrink and go sideways. i also wrote a small journal from someone who found the computer before you, so theres a bit more lore. the image in the welcome window is now a slideshow of different backrooms levels too. this time i mostly wrote the code myself and used ai for hints when i got stuck. It did give me some code directly like some css fixes i still have to fix the window getting trapped in the top bar and finish the 5th jam
Devlog #6 Hi! i finally did the 5th jam and i have a few more app ideas, one of which is this keypad app. basically i think im gonna leave hints around the apps for the password and itll lead you to something interesting i dont wanna reveal rn. its functional n the passowrd is 1234 for anyone wondering (ill change it later ofc) apart from that i cleaned up the js n made some functions that i can reuse for other apps. i also split up the main js file into a bunch of smaller files. idk if thats what programmers normally do but yeah. i found organizing my code to be really relaxing. i also fixed the bug where windows would get stuck at the top bar. im pretty proud of myself cuz i managed to do all of ts in <3hrs. in terms of vibecoding the only part i did use ai in was for the loading animation for when you enter the right password.
devlog #7 helloo i added a cool boot up animation which you can skip by clicking anywhere notes can now be saved as well i also added a photo gallery app which i tried to style like a film contact sheet with 12 pics each with their own descriptions and also fixed how clicking a new icon wouldnt deselect the old one and made some edits to the keypads display
devlog #8 hi guys i made this cassette app you can listen to songs on (6 tracks from the caretaker-everywhere at the end of time). the reels move using keyframes which is pretty cool imo. i dont really have much else to say apart from how it was rlly annoying to get the audio files into vscode cuz onedrive wouldnt let me for some reason. i used ai to teach me how keyframes work for this one
devlog #9 heloo i made 2 apps, a terminal window for running 7 different commands as well as a settings app where you can choose one of 3 wallpapers, reset the os, change the brightness and some other stuff too. i also used keyframes again to animate the first and third wallpaper while the second one is a video. i spent most of the time just trynna fix bugs with the wallpapers keyframes and deciding whats next for the project. i think the next app ill make is a game so that should be fun to do. also i realized the apps on the left arent aligned so ill have to fix that too. i was thinking about moving them somewhere else anyway. also ill try to find some better icons for the terminal and notes app cuz theyre really sticking out like a sore thumb rn
devlog #10 hi i made a game. its just minesweeper but with smilers instead of mines(smilers are backrooms monsters/entities). it works almost exactly like minesweeper. the only difference is that sometimes you might lose on the first click but its 3am and im too tired to worry about it. i also changed the icons of all of the apps.now i just have to make them not look ugly in their arrangement and finish the keypad app. when making the game i did use ai for help explain the logic n maths behind minesweeper (not how its played but how u actually calculate stuff bts). ok byebye
Devlog #11 Helo This will be my final devlog for this project :D. i aligned all of the apps to the left of the sceen, finished making the minesweeper game, left clues around the OS for the keypad app, added whats revealed after the entering the right password into the keypad app, and also wrote the README
Ships:
Hi everyone! I made a Backrooms-themed webOS. I started this project out with very little experience with programming, following the tutorials in the jams step by step, constantly getting stuck at now obvious errors. I’m really proud of how this project turned out since I only spent ~2 weeks making it and its turned out just as i had envisioned. When I was researching for an idea I found out that the computers in the backrooms have their own OS called BackOS, so I wanted to make my own rendition of that. I decided to add a bit of lore to the project too. My idea was that you find yourself trapped in the backrooms and find this specific computer with messages from a previous explorer which you can use to find out the password for the padlock app and find out what’s hidden. The OS has 7 apps- notes, photos, terminal, tapes, settings, desmiler(minesweeper), and a padlock app. The notes app has messages from a previous strandee. The photos app has a gallery of imagery from different parts of the backrooms. The terminal can be used to run a few commands and the tapes app acts like a cassette player you can listen to 6 different songs on. The settings app allows you to, for example, change the wallpaper. The desmiler app is similar to minesweeper but the mines are replaced by smilers (entities present in the backrooms). Finally, the padlock app is for you to investigate. I hope you enjoy! https://rnav09.github.io/BackOS/...
|
1793213627.8490312
|
1793300027.8490312
|
|
67902
|
Refract by @mixidmb | Stardance
|
mixidmb
|
1
|
32.0
|
594
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-19T19:56:54Z", "hours": 32.0, "multiplier": 18.8, "payout": 594, "blessing": "neutral", "text": "Refract! Quest Games Translation Layer. Haii! I made a way to play Quest games like Batman, Iron Man VR and AC Nexus on PC, Or any PCVR headset. You can even play Resident Evil 4 now, which is one of the most requested one :P It runs on Windows or Linux. The Android Emulator on Windows is the most compatible one. Refract Native is also on Windows and runs the game’s ARM64 code directly on the CPU, so its faster but still experimental (While recording a demo i got a pink cube in AC nexus lol, but through android emulator works!). Linux uses waydroid that just shares kernel. It’s still experimental though, so not every game works yet. Here is a video of me yapping a ton about it, and showing some gameplay >_> https://youtu.be/OpW-374mX74", "repo": "https://github.com/MIXIDtheSilly/Refract", "demo": "https://github.com/MIXIDtheSilly/Refract/releases"}]...
|
[{"post_id": 81063, "ts": "202 [{"post_id": 81063, "ts": "2026-10-19T18:20:30Z", "hours": 6.1647, "text": "Bug fixes and compatibility Okay let’s start with the big things. Iron Man VR works and runs at 140+ fps. And one of the most requested games, Resident Evil 4, runs too! It’s at around 160+ fps. It uses the old VrApi, which now works (still experimental, and 32-bit games aren’t supported). Controller haptics, the Linux Android build tools fix (game imports work now), and viewer crash reporting also work. Crashes go to viewer.err with el reason."}, {"post_id": 80654, "ts": "2026-10-18T12:31:32Z", "hours": 8.0708, "text": "Its even faster now Since last devlog, I swapped default translation layer on linux to my optimized Digitalis, and from dynarmic to Digitalis on Refract Native (windows). AND DAMNN, no one can tell me dynarmic is faster lol, from 200 fps in one of the games to 300+. Batman also runs at 120+ Linux has a working launcher now, and windows got texture compression improvements (RIP Vram) Then there are a bunch of other fixes, like Meta audio SDK working on Linux, or /sdcard storage path now resolving properly. Oh and almost forgot, FINALLY OPTIMIZED THE MAIN THREAD! It can hit 100% now because of lighter code also being JIT. This was probably the last bottleneck."}, {"post_id": 79125, "ts": "2026-10-12T19:11:22Z", "hours": 9.4442, "text": "Refract without an emulator now hai again, so over the past week I worked on Linux support and Refract Native , now you can run Quest games directly (well, translation layer) on the CPU without using QEMU. Funny JIT floating point error lol, broke my friend’s rig apart. What about Linux progress? The games run great! I tried it on North Star and it’s hitting 80 fps, cuz as you probably know we also don’t have to emulate the kernel there as Linux and Android are basically the same thing. also I hit 12 issues on GitHub (help)"}, {"post_id": 77853, "ts": "2026-10-08T15:22:14Z", "hours": 7.9314, "text": "Haii! So some of you know i got banned for a while but i’m back! New Project Refract! (You can now play Meta Quest titles on PC & PCVR) Refract runs Quest games on a Windows PC (Linux support soon! ), and in a PC VR headset through SteamVR. The APK runs in Android on your machine, Refract gives it fake Quest calls, and the eye frames come back out to your headset. Refract is for games you own! credit required if you use the code :P It started as a fork of AXRB by Feline Reintgen (But now its using my code so ig we are superior lol), and the launcher’s Meta sign-in comes from RiftLift. Translator is Digitalis. Oh forgot to mention that i already worked on it for a while, but wasn’t able to track time because of the suspension. And here is my playing batman on it."}]...
|
Title: Refract by @mixidmb | Stardance
Devlogs:
H Title: Refract by @mixidmb | Stardance
Devlogs:
Haii! So some of you know i got banned for a while but i’m back! New Project Refract! (You can now play Meta Quest titles on PC & PCVR) Refract runs Quest games on a Windows PC (Linux support soon! ), and in a PC VR headset through SteamVR. The APK runs in Android on your machine, Refract gives it fake Quest calls, and the eye frames come back out to your headset. Refract is for games you own! credit required if you use the code :P It started as a fork of AXRB by Feline Reintgen (But now its using my code so ig we are superior lol), and the launcher’s Meta sign-in comes from RiftLift. Translator is Digitalis. Oh forgot to mention that i already worked on it for a while, but wasn’t able to track time because of the suspension. And here is my playing batman on it.
Refract without an emulator now hai again, so over the past week I worked on Linux support and Refract Native , now you can run Quest games directly (well, translation layer) on the CPU without using QEMU. Funny JIT floating point error lol, broke my friend’s rig apart. What about Linux progress? The games run great! I tried it on North Star and it’s hitting 80 fps, cuz as you probably know we also don’t have to emulate the kernel there as Linux and Android are basically the same thing. also I hit 12 issues on GitHub (help)
Its even faster now Since last devlog, I swapped default translation layer on linux to my optimized Digitalis, and from dynarmic to Digitalis on Refract Native (windows). AND DAMNN, no one can tell me dynarmic is faster lol, from 200 fps in one of the games to 300+. Batman also runs at 120+ Linux has a working launcher now, and windows got texture compression improvements (RIP Vram) Then there are a bunch of other fixes, like Meta audio SDK working on Linux, or /sdcard storage path now resolving properly. Oh and almost forgot, FINALLY OPTIMIZED THE MAIN THREAD! It can hit 100% now because of lighter code also being JIT. This was probably the last bottleneck.
Bug fixes and compatibility Okay let’s start with the big things. Iron Man VR works and runs at 140+ fps. And one of the most requested games, Resident Evil 4, runs too! It’s at around 160+ fps. It uses the old VrApi, which now works (still experimental, and 32-bit games aren’t supported). Controller haptics, the Linux Android build tools fix (game imports work now), and viewer crash reporting also work. Crashes go to viewer.err with el reason.
Ships:
Refract! Quest Games Translation Layer. Haii! I made a way to play Quest games like Batman, Iron Man VR and AC Nexus on PC, Or any PCVR headset. You can even play Resident Evil 4 now, which is one of the most requested one :P It runs on Windows or Linux. The Android Emulator on Windows is the most compatible one. Refract Native is also on Windows and runs the game’s ARM64 code directly on the CPU, so its faster but still experimental (While recording a demo i got a pink cube in AC nexus lol, but through android emulator works!). Linux uses waydroid that just shares kernel. It’s still experimental though, so not every game works yet. Here is a video of me yapping a ton about it, and showing some gameplay >_> https://youtu.be/OpW-374mX74...
|
1793155836.2462945
|
1793242236.2462945
|
|
70823
|
fort.desktop by @ryni | Stardance
|
ryni
|
1
|
32.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-21T16:15:51Z", "hours": 32.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "this is fort.desktop! a tiny little client for fort.ind (my own game archive/sharkey instance) its made in universal windows platform and C# it has a couple features like browsing the fort.ind game archive, logging in with a fort.social account and browsing the instance and making posts! (that was tha hardest thing to get working) and live tiles. so like.. how do you use this since uwp apps are a core part of windows, all you need is ti extract the zip install the cert and click the .msix file and install from there (i also made a tiny script to speed up install if you dont wanna do that)", "repo": "https://github.com/fort-ind/uwp", "demo": "https://github.com/fort-ind/uwp/releases"}]...
|
[{"post_id": 81526, "ts": "202 [{"post_id": 81526, "ts": "2026-10-21T16:05:51Z", "hours": 32.2781, "text": "honestly been a while since i worked on this project.. but i bulit a lot (and learned how to not break a sharkey instance) these past few months ive been learning how to push content to a live tile :) i did also try out getting the windows share and ink apis to work.. a bunch of trial and error but now i can see i have inking support i got a lot more ideas to work on soon."}]...
|
Title: fort.desktop by @ryni | Stardance
Devlogs: Title: fort.desktop by @ryni | Stardance
Devlogs:
honestly been a while since i worked on this project.. but i bulit a lot (and learned how to not break a sharkey instance) these past few months ive been learning how to push content to a live tile :) i did also try out getting the windows share and ink apis to work.. a bunch of trial and error but now i can see i have inking support i got a lot more ideas to work on soon.
Ships:
this is fort.desktop! a tiny little client for fort.ind (my own game archive/sharkey instance) its made in universal windows platform and C# it has a couple features like browsing the fort.ind game archive, logging in with a fort.social account and browsing the instance and making posts! (that was tha hardest thing to get working) and live tiles. so like.. how do you use this since uwp apps are a core part of windows, all you need is ti extract the zip install the cert and click the .msix file and install from there (i also made a tiny script to speed up install if you dont wanna do that)...
|
1793166467.1783614
|
1793252867.1783614
|
|
67763
|
Alien Shooter by @MoElmsallati | Stardance
|
MoElmsallati
|
0
|
31.99
|
0
|
[]
|
[{"post_id": 77574, "ts": "202 [{"post_id": 77574, "ts": "2026-10-07T14:55:31Z", "hours": 8.7667, "text": "Last devlog!!! Finally after hours of working on this project I got a menu, scoring system damage system, and even a shooting system. I also added upgrades like rapid fire, as well as multi-shot. I hope you guys enjoy this game with all the bugs I faced on the way this’ll be worth it."}, {"post_id": 77415, "ts": "2026-10-06T21:31:39Z", "hours": 5.9667, "text": "I created a points system 5 points for normal alien ships and 10 for alien suicide bombers as I like to call them, they come down fast and one shot you if break your lines."}, {"post_id": 77278, "ts": "2026-10-06T12:28:22Z", "hours": 13.1608, "text": "Today was supposed to be a simple enemy spawn system. But it turned into a full‑blown debugging session. I spent most of the session tracking down a dumd issue where enemies were either spawning off‑screen, stacking on top of each other, or not spawning at all depending on the frame timing. The main issue ended up being a mix of incorrect prefab references and a timing bug in my spawn manager. I rewrote the entire generation loop, added proper boundaries, fixed the prefab assignments, and implemented a cleaner spawn interval system. I also added basic enemy movement and tested different spawn patterns to make sure everything felt consistent. It took way longer than expected, but the system is finally stable and ready for the next step. I’m adding shooting and collision logic. Overall, a long but productive day. The game is starting to feel alive now that enemies actually appear correctly."}, {"post_id": 76853, "ts": "2026-10-04T20:18:48Z", "hours": 4.0983, "text": "Spent the session getting the player movement feeling right. Tried a few different approaches (raw transform movement, Rigidbody2D, clamped boundaries). Ended up rewriting the script twice because the first version felt floaty.Also implemented the scrolling background. I had to tweak the speed a bunch so it didn’t look jittery. Learned how to loop textures cleanly and fixed a bug where the background snapped instead of scrolling.Overall, lots of small adjustments and testing, but the game finally feels like a shooter now."}]...
|
Title: Alien Shooter by @MoElmsallati | Stardance
Title: Alien Shooter by @MoElmsallati | Stardance
Devlogs:
Spent the session getting the player movement feeling right. Tried a few different approaches (raw transform movement, Rigidbody2D, clamped boundaries). Ended up rewriting the script twice because the first version felt floaty.Also implemented the scrolling background. I had to tweak the speed a bunch so it didn’t look jittery. Learned how to loop textures cleanly and fixed a bug where the background snapped instead of scrolling.Overall, lots of small adjustments and testing, but the game finally feels like a shooter now.
Today was supposed to be a simple enemy spawn system. But it turned into a full‑blown debugging session. I spent most of the session tracking down a dumd issue where enemies were either spawning off‑screen, stacking on top of each other, or not spawning at all depending on the frame timing. The main issue ended up being a mix of incorrect prefab references and a timing bug in my spawn manager. I rewrote the entire generation loop, added proper boundaries, fixed the prefab assignments, and implemented a cleaner spawn interval system. I also added basic enemy movement and tested different spawn patterns to make sure everything felt consistent. It took way longer than expected, but the system is finally stable and ready for the next step. I’m adding shooting and collision logic. Overall, a long but productive day. The game is starting to feel alive now that enemies actually appear correctly.
I created a points system 5 points for normal alien ships and 10 for alien suicide bombers as I like to call them, they come down fast and one shot you if break your lines.
Last devlog!!! Finally after hours of working on this project I got a menu, scoring system damage system, and even a shooting system. I also added upgrades like rapid fire, as well as multi-shot. I hope you guys enjoy this game with all the bugs I faced on the way this’ll be worth it....
|
1793112923.1400473
|
1793717723.1400473
|
|
40280
|
website to learn python by @Ahmad342 | Stardance
|
Ahmad342
|
0
|
31.94
|
0
|
[]
|
[{"post_id": 41431, "ts": "202 [{"post_id": 41431, "ts": "2026-08-05T17:12:38Z", "hours": 12.7314, "text": "https://stellular-frangipane-37ec13.netlify.app/ this is demo forntend link try to vist it i have add a funny comment is it even allow ??"}, {"post_id": 37630, "ts": "2026-07-30T14:37:14Z", "hours": 9.3239, "text": "it’s about to be complete very soon"}, {"post_id": 36525, "ts": "2026-07-28T18:09:06Z", "hours": 9.5219, "text": "How it’s looking , and mybe tomorrow i will add preview so you guy’s can check how it’s been going"}, {"post_id": 35402, "ts": "2026-07-26T19:41:38Z", "hours": 0.3633, "text": "website where you can learn python fun way"}]...
|
Title: website to learn python by @Ahmad342 | Star Title: website to learn python by @Ahmad342 | Stardance
Devlogs:
website where you can learn python fun way
How it’s looking , and mybe tomorrow i will add preview so you guy’s can check how it’s been going
it’s about to be complete very soon
https://stellular-frangipane-37ec13.netlify.app/ this is demo forntend link try to vist it i have add a funny comment is it even allow ??...
|
1793170146.745846
|
1793774946.745846
|
|
31
|
Serv0 by @RR | Stardance
|
RR
|
0
|
31.92
|
0
|
[]
|
[{"post_id": 22641, "ts": "202 [{"post_id": 22641, "ts": "2026-07-05T06:03:39Z", "hours": 2.9081, "text": "ITS FINALLY DONE Finished up the panels and then shipped the thing"}, {"post_id": 21473, "ts": "2026-07-03T13:18:57Z", "hours": 3.4169, "text": "ITS SO CLOSEEEEEEEEEEEEEEEEEEE. Anyway, I made tensioners and just general random things. Skirts are done, electronics cover is done, the motor mounts actually have a way to attach to the frame in a solid way, I setup the bed heater drawing, and had a decent time. I also did a little bit of looking into panel costs and, apparently, I could put 1/8” steel panels all around this thing for like $100 total. Pretty nice!"}, {"post_id": 21353, "ts": "2026-07-03T07:42:24Z", "hours": 3.8003, "text": "Toolhead :3 Honestly, I don’t hate it. Managed to leave Lookout paused for 2 hours of this because I’m a bit dum, of which I just tweaked the ducts over and over. They’re pretty much as large as I could get them and I like them. The tips are eh, I’ll be changing it to sweep front to back Eventually ™️ This is potentially the thinnest CPAP compatible UHF toolhead, too? It’s the same width as an MGN12 rail, ignoring the protoxtruder mounting. If I switched to a Sherpa Mini with a micro bowden, I could have it fully within the MGN12 all the way up. Pretty cool!"}, {"post_id": 20648, "ts": "2026-07-02T09:23:16Z", "hours": 1.2569, "text": "Well. This thing sure is a toolhead carriage. It’s based off of Ruiqi Mao’s Carveoff toolhead belt clips, because they’re really nice. Just built more for FDM printing now, rather than CNC milled. Managed to also leave Lookout paused for about an hour of working on this total, so that sucks. Oh well. Surprisingly, I don’t entirely hate this carriage. Putting a hotend and extruder on it is…..an interesting task, and one that can definitely be done better. However, I just need to get this thing designed and ordered. then I can redo the toolhead to be competent. My terrible toolhead for this carriage is also shown. It’s really bad. Might work a little though"}, {"post_id": 20592, "ts": "2026-07-02T06:36:08Z", "hours": 2.3739, "text": "Bed! Z Axis! It wasn’t that bad! I was kinda dreading this, honestly. Last time I made a z-axis for a corexy printer, it was…bad. We don’t talk about Monstrosity. However, I’m much much much better at CAD now! Master sketching & in-context part studios made this really easy to line everything up perfectly and get things to line up really nicely. Nicely space efficient & should be decently rigid. Probably could’ve fit triple z in, but that’s a bit harder to design and more expensive. This lil guy has a total of 2 printed parts holding the bed and it’s extrusion frame, which I think is good. Multiple parts means lining things up, a single part means it’s either lined up or the screws don’t go in."}, {"post_id": 20429, "ts": "2026-07-02T00:53:24Z", "hours": 4.7172, "text": "Made some front idlers :3 Had a decent time, also started on the z axis. The idlers are a bit sketchy but I think they’ll come out half decent."}, {"post_id": 15466, "ts": "2026-06-25T04:39:27Z", "hours": 0.7167, "text": "New mount: successfully made! Overall I don’t hate it. Rigidity will be interesting, but I knew that coming in to this. Was able to reuse a lot of sketches and just slapped a couple extra on for things like the front bolt heat set mount thingy. theoretical max travel is now 120.35126. Going to probably try and squeeze another 2mm out."}, {"post_id": 15452, "ts": "2026-06-25T03:48:54Z", "hours": 2.7022, "text": "Gantry design is hard. Light blue part on the left side of the image is the new mount. Fun fact; as part of making this mount I learned that my master sketch was slightly off and in fixing this I made literally every existing part change. Parametric is magical and made it not too annoying to fix, but still. An annoying and confusing half hour. The bearings actually hold the belt in the right spot now, though, so that’s good. Now is when the second photo comes in to play. This is the theoretical absolute maximum travel possible…108mm So now I get to chop the front 12mm off of the mount. Not sure if I should just…remake it from scratch, or what. Might just cut it and one of the part studios will be cooked."}, {"post_id": 10782, "ts": "2026-06-17T18:10:51Z", "hours": 0.6836, "text": "working on the gantry!! i’m trying really really hard to make this thing AS SMALL AS POSSIBLE, without compromising on the mechanical foundation. the normal v0 uses an MGN7H for the Y rails…I don’t like anything under MGN9. So I’m using MGN12. These are notably larger, but they are MUCH more rigid. Considering my gantry has a theoretical power output of >2,000 watts, I want the rigidity. This is going to end up being the most overbuilt v0 on the planet."}, {"post_id": 10454, "ts": "2026-06-17T05:52:15Z", "hours": 0.55, "text": "So these extruders are huge, lol. I’ve been planning to use the BoomBox extruder because I love the thing and want to support James Pray. I almost designed my own, and in fact spent a while trying to, but ended up realizing nema 17’s are cheaper than I thought and I could just use the glorious BoomBox. Unfortunately, I need 4 of them. Which is huge, apparently. Whoops."}, {"post_id": 10444, "ts": "2026-06-17T05:17:58Z", "hours": 8.7908, "text": "Long devlog I know, hardware support has been iffy so here we are lol. I’ve done a lot in this 8h45m, though! This has been entirely focused on gantry work. I’ve gone through so, so, so many revisions. Most of them pretty bad. I’m finally somewhere I’m actually proud of, though! This is what I call the “drive unit”. It’s 2 sheets of 1/4” lasercut steel with dual Rev Robotics NEO v1.1 motors strapped to it. It’s also got a very simplistic belt path designed after the Pandora gantry, except with some insane tensioning capabilities. I still need to finish the drive unit, the tensioner isn’t complete yet. Overally, turns out if you give a Voron v0 a really large backpack, it pretty happily will take 1kw motors. Who knew?"}]...
|
Title: Serv0 by @RR | Stardance
Devlogs:
Long dev Title: Serv0 by @RR | Stardance
Devlogs:
Long devlog I know, hardware support has been iffy so here we are lol. I’ve done a lot in this 8h45m, though! This has been entirely focused on gantry work. I’ve gone through so, so, so many revisions. Most of them pretty bad. I’m finally somewhere I’m actually proud of, though! This is what I call the “drive unit”. It’s 2 sheets of 1/4” lasercut steel with dual Rev Robotics NEO v1.1 motors strapped to it. It’s also got a very simplistic belt path designed after the Pandora gantry, except with some insane tensioning capabilities. I still need to finish the drive unit, the tensioner isn’t complete yet. Overally, turns out if you give a Voron v0 a really large backpack, it pretty happily will take 1kw motors. Who knew?
So these extruders are huge, lol. I’ve been planning to use the BoomBox extruder because I love the thing and want to support James Pray. I almost designed my own, and in fact spent a while trying to, but ended up realizing nema 17’s are cheaper than I thought and I could just use the glorious BoomBox. Unfortunately, I need 4 of them. Which is huge, apparently. Whoops.
working on the gantry!! i’m trying really really hard to make this thing AS SMALL AS POSSIBLE, without compromising on the mechanical foundation. the normal v0 uses an MGN7H for the Y rails…I don’t like anything under MGN9. So I’m using MGN12. These are notably larger, but they are MUCH more rigid. Considering my gantry has a theoretical power output of >2,000 watts, I want the rigidity. This is going to end up being the most overbuilt v0 on the planet.
Gantry design is hard. Light blue part on the left side of the image is the new mount. Fun fact; as part of making this mount I learned that my master sketch was slightly off and in fixing this I made literally every existing part change. Parametric is magical and made it not too annoying to fix, but still. An annoying and confusing half hour. The bearings actually hold the belt in the right spot now, though, so that’s good. Now is when the second photo comes in to play. This is the theoretical absolute maximum travel possible…108mm So now I get to chop the front 12mm off of the mount. Not sure if I should just…remake it from scratch, or what. Might just cut it and one of the part studios will be cooked.
New mount: successfully made! Overall I don’t hate it. Rigidity will be interesting, but I knew that coming in to this. Was able to reuse a lot of sketches and just slapped a couple extra on for things like the front bolt heat set mount thingy. theoretical max travel is now 120.35126. Going to probably try and squeeze another 2mm out.
Made some front idlers :3 Had a decent time, also started on the z axis. The idlers are a bit sketchy but I think they’ll come out half decent.
Bed! Z Axis! It wasn’t that bad! I was kinda dreading this, honestly. Last time I made a z-axis for a corexy printer, it was…bad. We don’t talk about Monstrosity. However, I’m much much much better at CAD now! Master sketching & in-context part studios made this really easy to line everything up perfectly and get things to line up really nicely. Nicely space efficient & should be decently rigid. Probably could’ve fit triple z in, but that’s a bit harder to design and more expensive. This lil guy has a total of 2 printed parts holding the bed and it’s extrusion frame, which I think is good. Multiple parts means lining things up, a single part means it’s either lined up or the screws don’t go in.
Well. This thing sure is a toolhead carriage. It’s based off of Ruiqi Mao’s Carveoff toolhead belt clips, because they’re really nice. Just built more for FDM printing now, rather than CNC milled. Managed to also leave Lookout paused for about an hour of working on this total, so that sucks. Oh well. Surprisingly, I don’t entirely hate this carriage. Putting a hotend and extruder on it is…..an interesting task, and one that can definitely be done better. However, I just need to get this thing designed and ordered. then I can redo the toolhead to be competent. My terrible toolhead for this carriage is also shown. It’s really bad. Might work a little though
Toolhead :3 Honestly, I don’t hate it. Managed to leave Lookout paused for 2 hours of this because I’m a bit dum, of which I just tweaked the ducts over and over. They’re pretty much as large as I could get them and I like them. The tips are eh, I’ll be changing it to sweep front to back Eventually ™️ This is potentially the thinnest CPAP compatible UHF toolhead, too? It’s the same width as an MGN12 rail, ignoring the protoxtruder mounting. If I switched to a Sherpa Mini with a micro bowden, I could have it fully within the MGN12 all the way up. Pretty cool!
ITS SO CLOSEEEEEEEEEEEEEEEEEEE. Anyway, I made tensioners and just general random things. Skirts are done, electronics cover is done, the motor mounts actually have a way to attach to the frame in a solid way, I setup the bed heater drawing, and had a decent time. I also did a little bit of looking into panel costs and, apparently, I could put 1/8” steel panels all around this thing for like $100 total. Pretty nice!
ITS FINALLY DONE Finished up the panels and then shipped the thing...
|
1792684350.9197447
|
1793289150.9197447
|
|
44365
|
Spider-man helmet by @lilspyjr | Stardance
|
lilspyjr
|
0
|
31.88
|
0
|
[]
|
[{"post_id": 68460, "ts": "202 [{"post_id": 68460, "ts": "2026-09-15T04:44:32Z", "hours": 2.3931, "text": "I worked on the open and close mechanism more so that it works more efficiently. Eye mechanisms don’t close as much now unfortunately."}, {"post_id": 64628, "ts": "2026-09-09T05:17:48Z", "hours": 3.2844, "text": "Almost done the open and closing mechanism, needa brush up on a few stuff. Sorry for not posting in so long…"}, {"post_id": 55373, "ts": "2026-08-27T04:53:36Z", "hours": 3.19, "text": "Finally Finished the lenses, they both open and close now, I kinda got a bad angle of it though so sorry"}, {"post_id": 53536, "ts": "2026-08-24T03:59:06Z", "hours": 3.2408, "text": "Finally got the lens to be automatic gonna work on trying to improve it though."}, {"post_id": 46125, "ts": "2026-08-13T04:12:05Z", "hours": 1.3675, "text": "Stuck on getting the lens mechanism to be automatic so I will probably work on the lens(mesh part) tomorrow."}, {"post_id": 45020, "ts": "2026-08-11T05:00:20Z", "hours": 4.3061, "text": "Worked on the lenses instead of the open and close mechanism because it would be easier to do that first."}, {"post_id": 43795, "ts": "2026-08-09T07:01:32Z", "hours": 2.7272, "text": "Added structure to the helmet and continuing to work on the opening mechanism."}, {"post_id": 42974, "ts": "2026-08-07T23:37:58Z", "hours": 2.765, "text": "I added the back piece to the helmet and started working on the mechanism to make it open."}, {"post_id": 42479, "ts": "2026-08-07T07:41:43Z", "hours": 8.6044, "text": "Working on a second version of my Iron-man/spiderman hybrid helmet"}]...
|
Title: Spider-man helmet by @lilspyjr | Stardance
Title: Spider-man helmet by @lilspyjr | Stardance
Devlogs:
Working on a second version of my Iron-man/spiderman hybrid helmet
I added the back piece to the helmet and started working on the mechanism to make it open.
Added structure to the helmet and continuing to work on the opening mechanism.
Worked on the lenses instead of the open and close mechanism because it would be easier to do that first.
Stuck on getting the lens mechanism to be automatic so I will probably work on the lens(mesh part) tomorrow.
Finally got the lens to be automatic gonna work on trying to improve it though.
Finally Finished the lenses, they both open and close now, I kinda got a bad angle of it though so sorry
Almost done the open and closing mechanism, needa brush up on a few stuff. Sorry for not posting in so long…
I worked on the open and close mechanism more so that it works more efficiently. Eye mechanisms don’t close as much now unfortunately....
|
1792583509.2195132
|
1793188309.2195132
|
|
53584
|
Momo by @Eben-Siyabalapitiya | Stardance
|
Eben-Siyabalapitiya
|
0
|
31.85
|
0
|
[]
|
[{"post_id": 64004, "ts": "202 [{"post_id": 64004, "ts": "2026-09-08T03:28:57Z", "hours": 3.0664, "text": "LOG 7: Cleaning up the wiring Spent this one getting Momo assembled as far as I can without the Pi. Idea is that when the new one shows up I just plug everything in and go. Reprinting in Black Reprinted everything in black. Took a while since it’s a lot of parts, and I printed a few test pieces along the way to check fits before committing to the final versions. The Wiring This was the main job. Last log the wiring took up more space than the robot did, so I redid all of it properly. Cut every wire to the actual length it needed instead of leaving slack everywhere. Heat shrink on everything, and made sure no bare wire was touching anything it shouldn’t. The switch I ordered for Momo came in too so that got wired in. Spent a lot of time just taping things down and making sure nothing can work its way loose or pop out when the legs move. Where It’s At Came out way cleaner than I expected. It’s super compact now, the space ended up being pretty much the perfect size for everything once the wiring was done right. Couple of days of mostly wiring and printing, but it looks a lot better than it did. Just waiting on the Pi now."}, {"post_id": 61863, "ts": "2026-09-05T00:04:58Z", "hours": 4.1581, "text": "LOG 6: I cooked the Pi Bad news this time. The 3AM Incident Momo walks, but I hadn’t touched the mic or speaker at all yet. So I was up at 3am soldering the mic and the amp together, planning to get audio working and then move Momo into the full black assembly the next day. Was actually really excited for it. Then a blob of solder flew off and landed on the Pi. I saw it land, wiped it off quick and got it out, and just kept soldering. Figured I’d test everything once I was done. Finished up, plugged in just the Pi on its own to test audio, and nothing. No light. Dead. That one hurt. The Pi was around $50 and now I’m waiting like 3 days for a replacement, right when I was ready to actually assemble everything. Making Use of the Wait Didn’t want to just sit around so I kept going on the parts I could. Assembled the final legs. These are the ones actually going on Momo after all the prototyping and the CAD changes from testing. Good to have those done. Also grabbed an ESP32 I had lying around and used it to test the mic and the speaker. Took me a while to figure out since I’ve never really done audio stuff before, but I got there and it was a solid learning experience. At least now I know the audio parts themselves work. What’s Next Once the new Pi shows up I’m assembling everything into the main body. Screen, servos, PCA9685, all of it mounted properly. The other thing I have to sort out is wiring. Right now the wiring takes up more space than Momo does, which is not great. It looks bigger and messier than the actual robot. So I need to lock in and figure out proper cable management before final assembly. Plan is to clean Momo up as much as I can so he’s ready to wire the moment the parts land. RIP Pi. -$100."}, {"post_id": 60602, "ts": "2026-09-03T01:53:26Z", "hours": 6.6844, "text": "LOG 4 - Momo Walks Momo walks now. Not well, but it walks. Getting the Gait Working This one took way more thinking than I expected. Figuring out how Momo should actually move was the hard part, not writing the code. With only 2 servos per leg you can’t do a proper trot right now well lowkey thats a later problem, so it has to be a static crawl for now just to test. One leg moves at a time while three stay planted. Sounds simple until you’re trying to work out the timing and the angles for each joint at each stage of a step. Went through a lot of iterations on the code before anything resembled walking. Printing and Testing Legs Printed a bunch of different leg designs. Different lengths, different shapes, different joint positions. Had to keep testing to make sure the legs actually lined up right, because if the geometry is even a bit off the feet don’t land where the code thinks they should and the whole thing drags itself sideways. A lot of print, test, adjust, print again. Where It’s At right now It walks but it makes a lot of errors. Drifts off, doesn’t go perfectly straight, some steps land wrong. But it moves on its own and that’s the milestone I was going for. Nothing is properly assembled yet either. As you can see in the video and pictures, the components are just sitting in there for now. The whole focus this round was on getting the base structure right and proving the movement works before I commit to printing the final parts. I’ve got a decent idea of what needs to change now, both on the code side and the CAD side. Slow progress but good progress. Next up is cleaning up the gait and starting on the final build (Hopefully)"}, {"post_id": 58645, "ts": "2026-08-31T04:11:25Z", "hours": 5.3569, "text": "LOG 4: Trying to get Momo to move Not walking yet. Kind of moving, but not really. First Attempts Spent this one just trying to get the legs doing something coordinated. Wrote the first version of the movement code and it was rough. Legs firing in the wrong order feet lifting when they should be planted, the whole thing basically flailing in place instead of going anywhere. Realised pretty fast that with only 2 servos per leg I can’t do a proper trot, so it has to be a static crawl. One leg moves at a time while three stay planted. Sounds simple until you’re actually working out the timing and the angles for each joint at each stage of a step. Went through a lot of iterations and none of them really worked yet. Printing and Testing Legs Printed a bunch of different leg designs. Different lengths, different shapes, different joint positions. Kept testing to see which geometry would even let the feet land where the code expects them to, because if it’s off the whole thing just drags itself sideways instead of stepping. A lot of print, test, adjust, print again. Where It’s At It moves but it doesn’t walk. Legs go through the motions and the body barely goes anywhere. Still figuring out the timing. Nothing is assembled properly either, components are just sitting in there loose for now while I work this out. Next log is hopefully actual walking."}, {"post_id": 56422, "ts": "2026-08-28T05:57:16Z", "hours": 3.6764, "text": "Log 2 Parts finally showed up. Spent most of this one wiring. First time using a Raspberry Pi Zero so it took me way longer than it should have. Counting header pins with no labels on the board is its own kind of pain. Had to keep going back to a pinout diagram to make sure I wasn’t about to put 5V somewhere it shouldn’t go ( i did two times loll). Got the PCA9685 hooked up to the Pi, sorted out the power side with two separate regulators, one for the servos and one for the Pi so the servos can’t brown it out mid step. Also messed around with the software side. Getting the Pi connected to WiFi was more annoying than expected, ended up fighting that for a bit. Once it was on the network I could SSH in and start installing everything I need. Did some more tolerance testing with the legs too. Printed a couple of test pieces to check the servo pockets and joint fits before committing to printing the whole thing. Came out pretty good, everything sits where it should. So this one was mostly wiring and Pi setup, with a bit of CAD and assembly mixed in. Not the most exciting to look at but it’s the stuff that has to work before anything else does."}, {"post_id": 54266, "ts": "2026-08-25T04:55:57Z", "hours": 8.9033, "text": "Log 1 Meet Momo. Momo is a small four legged robot spider. 8 servos, two per leg, one to swing, the leg and one to lift it. It’s got a screen for a face that changes expression, a mic, and a speaker. The idea is you talk to it and it talks back, and it actually knows it’s a spider. Ask it to walk forward and it walks forward. Say something dumb and it makes a confused face. I spent a few days just researching before touching anything. Went back and forth on the board a lot, ESP32 vs Pi, and how to actually power 8 servos without browning everything out. Worked out the parts list, orderedeverything, and then gaps where i was just waiting onshipping. So I figured I’d CAD a rough version. Just to get a sense of proportions andwhere things would sit. That was the plan anyway. I got way too into it and ended up modelling the whole actual thing. Not a mockup but the real one. Spent days on it though. Kept redoing where the legs mount and where the second joint sits because the first few versions either had no range of motion or put the feet way too far out from the body. Parts showed up eventually and I tested the fit with some servos I already had ( the press fit was so good that it stripped the servo wire😭). Checked tolerances, made sure the servo pockets weren’t too tight, horns cleared properly, that kind of thing. Came out way better than I expected honestly. This was mostly a CAD week and I’m glad it was. Next up is wiring and getting the first servo to move set up the pi and rest of the componenets."}]...
|
Title: Momo by @Eben-Siyabalapitiya | Stardance
D Title: Momo by @Eben-Siyabalapitiya | Stardance
Devlogs:
Log 1 Meet Momo. Momo is a small four legged robot spider. 8 servos, two per leg, one to swing, the leg and one to lift it. It’s got a screen for a face that changes expression, a mic, and a speaker. The idea is you talk to it and it talks back, and it actually knows it’s a spider. Ask it to walk forward and it walks forward. Say something dumb and it makes a confused face. I spent a few days just researching before touching anything. Went back and forth on the board a lot, ESP32 vs Pi, and how to actually power 8 servos without browning everything out. Worked out the parts list, orderedeverything, and then gaps where i was just waiting onshipping. So I figured I’d CAD a rough version. Just to get a sense of proportions andwhere things would sit. That was the plan anyway. I got way too into it and ended up modelling the whole actual thing. Not a mockup but the real one. Spent days on it though. Kept redoing where the legs mount and where the second joint sits because the first few versions either had no range of motion or put the feet way too far out from the body. Parts showed up eventually and I tested the fit with some servos I already had ( the press fit was so good that it stripped the servo wire😭). Checked tolerances, made sure the servo pockets weren’t too tight, horns cleared properly, that kind of thing. Came out way better than I expected honestly. This was mostly a CAD week and I’m glad it was. Next up is wiring and getting the first servo to move set up the pi and rest of the componenets.
Log 2 Parts finally showed up. Spent most of this one wiring. First time using a Raspberry Pi Zero so it took me way longer than it should have. Counting header pins with no labels on the board is its own kind of pain. Had to keep going back to a pinout diagram to make sure I wasn’t about to put 5V somewhere it shouldn’t go ( i did two times loll). Got the PCA9685 hooked up to the Pi, sorted out the power side with two separate regulators, one for the servos and one for the Pi so the servos can’t brown it out mid step. Also messed around with the software side. Getting the Pi connected to WiFi was more annoying than expected, ended up fighting that for a bit. Once it was on the network I could SSH in and start installing everything I need. Did some more tolerance testing with the legs too. Printed a couple of test pieces to check the servo pockets and joint fits before committing to printing the whole thing. Came out pretty good, everything sits where it should. So this one was mostly wiring and Pi setup, with a bit of CAD and assembly mixed in. Not the most exciting to look at but it’s the stuff that has to work before anything else does.
LOG 4: Trying to get Momo to move Not walking yet. Kind of moving, but not really. First Attempts Spent this one just trying to get the legs doing something coordinated. Wrote the first version of the movement code and it was rough. Legs firing in the wrong order feet lifting when they should be planted, the whole thing basically flailing in place instead of going anywhere. Realised pretty fast that with only 2 servos per leg I can’t do a proper trot, so it has to be a static crawl. One leg moves at a time while three stay planted. Sounds simple until you’re actually working out the timing and the angles for each joint at each stage of a step. Went through a lot of iterations and none of them really worked yet. Printing and Testing Legs Printed a bunch of different leg designs. Different lengths, different shapes, different joint positions. Kept testing to see which geometry would even let the feet land where the code expects them to, because if it’s off the whole thing just drags itself sideways instead of stepping. A lot of print, test, adjust, print again. Where It’s At It moves but it doesn’t walk. Legs go through the motions and the body barely goes anywhere. Still figuring out the timing. Nothing is assembled properly either, components are just sitting in there loose for now while I work this out. Next log is hopefully actual walking.
LOG 4 - Momo Walks Momo walks now. Not well, but it walks. Getting the Gait Working This one took way more thinking than I expected. Figuring out how Momo should actually move was the hard part, not writing the code. With only 2 servos per leg you can’t do a proper trot right now well lowkey thats a later problem, so it has to be a static crawl for now just to test. One leg moves at a time while three stay planted. Sounds simple until you’re trying to work out the timing and the angles for each joint at each stage of a step. Went through a lot of iterations on the code before anything resembled walking. Printing and Testing Legs Printed a bunch of different leg designs. Different lengths, different shapes, different joint positions. Had to keep testing to make sure the legs actually lined up right, because if the geometry is even a bit off the feet don’t land where the code thinks they should and the whole thing drags itself sideways. A lot of print, test, adjust, print again. Where It’s At right now It walks but it makes a lot of errors. Drifts off, doesn’t go perfectly straight, some steps land wrong. But it moves on its own and that’s the milestone I was going for. Nothing is properly assembled yet either. As you can see in the video and pictures, the components are just sitting in there for now. The whole focus this round was on getting the base structure right and proving the movement works before I commit to printing the final parts. I’ve got a decent idea of what needs to change now, both on the code side and the CAD side. Slow progress but good progress. Next up is cleaning up the gait and starting on the final build (Hopefully)
LOG 6: I cooked the Pi Bad news this time. The 3AM Incident Momo walks, but I hadn’t touched the mic or speaker at all yet. So I was up at 3am soldering the mic and the amp together, planning to get audio working and then move Momo into the full black assembly the next day. Was actually really excited for it. Then a blob of solder flew off and landed on the Pi. I saw it land, wiped it off quick and got it out, and just kept soldering. Figured I’d test everything once I was done. Finished up, plugged in just the Pi on its own to test audio, and nothing. No light. Dead. That one hurt. The Pi was around $50 and now I’m waiting like 3 days for a replacement, right when I was ready to actually assemble everything. Making Use of the Wait Didn’t want to just sit around so I kept going on the parts I could. Assembled the final legs. These are the ones actually going on Momo after all the prototyping and the CAD changes from testing. Good to have those done. Also grabbed an ESP32 I had lying around and used it to test the mic and the speaker. Took me a while to figure out since I’ve never really done audio stuff before, but I got there and it was a solid learning experience. At least now I know the audio parts themselves work. What’s Next Once the new Pi shows up I’m assembling everything into the main body. Screen, servos, PCA9685, all of it mounted properly. The other thing I have to sort out is wiring. Right now the wiring takes up more space than Momo does, which is not great. It looks bigger and messier than the actual robot. So I need to lock in and figure out proper cable management before final assembly. Plan is to clean Momo up as much as I can so he’s ready to wire the moment the parts land. RIP Pi. -$100.
LOG 7: Cleaning up the wiring Spent this one getting Momo assembled as far as I can without the Pi. Idea is that when the new one shows up I just plug everything in and go. Reprinting in Black Reprinted everything in black. Took a while since it’s a lot of parts, and I printed a few test pieces along the way to check fits before committing to the final versions. The Wiring This was the main job. Last log the wiring took up more space than the robot did, so I redid all of it properly. Cut every wire to the actual length it needed instead of leaving slack everywhere. Heat shrink on everything, and made sure no bare wire was touching anything it shouldn’t. The switch I ordered for Momo came in too so that got wired in. Spent a lot of time just taping things down and making sure nothing can work its way loose or pop out when the legs move. Where It’s At Came out way cleaner than I expected. It’s super compact now, the space ended up being pretty much the perfect size for everything once the wiring was done right. Couple of days of mostly wiring and printing, but it looks a lot better than it did. Just waiting on the Pi now....
|
1792932876.29183
|
1793796876.29183
|
|
60050
|
Kira Hackpad by @kira_iovenko | Stardance
|
kira_iovenko
|
0
|
31.85
|
0
|
[]
|
[{"post_id": 72957, "ts": "202 [{"post_id": 72957, "ts": "2026-09-24T03:27:53Z", "hours": 4.6078, "text": "I finished up my hackpad. I wrote the firmware in QMK with some help from ChatGPT for coding and debugging. Then I fixed a mounted point in PCB, organized my project files, and generated production files. Everything is now organized and ready for submission!"}, {"post_id": 71559, "ts": "2026-09-21T01:52:11Z", "hours": 8.3, "text": "I finally finished my new hackpad case. I added a hole for the USB port using orpheuspad as an example, then added mounting screw holes and an additional angled plate at the bottom. I also added M3 mounting hole to my PCB and matched it in the case so the PCB can be securely fastened now. The only thing left is the firmware."}, {"post_id": 70390, "ts": "2026-09-19T02:59:20Z", "hours": 4.9667, "text": "I added my new PCB to the Fusion project and aligned it with the components and sketches for the new case. I reworked the sketches several times to make sure everything lines up and fits correctly, then continued working on the case and assembling the components. The case is almost done, but I still need to add a hole for usb port and screws to hold pcb and case parts together."}, {"post_id": 68973, "ts": "2026-09-16T04:11:44Z", "hours": 6.8333, "text": "I updated my schematic and placed all new parts on the pcb to match the new case design. I spent a lot of time to route everything and making sure all the connections fit with the new layout but it’s finally finished. Next I will continue working on the case and assembly."}, {"post_id": 67775, "ts": "2026-09-14T00:53:23Z", "hours": 4.4544, "text": "I spent the last couple of days figuring out how to add 3D models into fusion 360. I had trouble finding downloadable models and I eventually exported them from orpheuspad example and added them to my project. Then I arranged the models and started working on a new case. I also need to update pcb to match the new design."}, {"post_id": 65206, "ts": "2026-09-10T05:22:06Z", "hours": 1.6667, "text": "Today I designed a case for my hackpad in Fusion 360. I followed the guide to create the base, sides, and lid with the switches holes. I also added a usb cutout. This was my first time using Fusion 360, so I had to figure out the tools I used and make a lot adjustments along the way."}, {"post_id": 64626, "ts": "2026-09-09T05:16:06Z", "hours": 1.0169, "text": "Today I started my first project in KiCad. I tried to follow the guide, but I ran into several issues because it is probably written for another version of KiCad. I had to google how to install the footprints and symbols, move the parts around, add the board outline, and so on. After figuring those out I finished my schematic and routed connections in PCB editor."}]...
|
Title: Kira Hackpad by @kira_iovenko | Stardance
Title: Kira Hackpad by @kira_iovenko | Stardance
Devlogs:
Today I started my first project in KiCad. I tried to follow the guide, but I ran into several issues because it is probably written for another version of KiCad. I had to google how to install the footprints and symbols, move the parts around, add the board outline, and so on. After figuring those out I finished my schematic and routed connections in PCB editor.
Today I designed a case for my hackpad in Fusion 360. I followed the guide to create the base, sides, and lid with the switches holes. I also added a usb cutout. This was my first time using Fusion 360, so I had to figure out the tools I used and make a lot adjustments along the way.
I spent the last couple of days figuring out how to add 3D models into fusion 360. I had trouble finding downloadable models and I eventually exported them from orpheuspad example and added them to my project. Then I arranged the models and started working on a new case. I also need to update pcb to match the new design.
I updated my schematic and placed all new parts on the pcb to match the new case design. I spent a lot of time to route everything and making sure all the connections fit with the new layout but it’s finally finished. Next I will continue working on the case and assembly.
I added my new PCB to the Fusion project and aligned it with the components and sketches for the new case. I reworked the sketches several times to make sure everything lines up and fits correctly, then continued working on the case and assembling the components. The case is almost done, but I still need to add a hole for usb port and screws to hold pcb and case parts together.
I finally finished my new hackpad case. I added a hole for the USB port using orpheuspad as an example, then added mounting screw holes and an additional angled plate at the bottom. I also added M3 mounting hole to my PCB and matched it in the case so the PCB can be securely fastened now. The only thing left is the firmware.
I finished up my hackpad. I wrote the firmware in QMK with some help from ChatGPT for coding and debugging. Then I fixed a mounted point in PCB, organized my project files, and generated production files. Everything is now organized and ready for submission!...
|
1793030074.69008
|
1793634874.69008
|
|
58790
|
2D to 3D wallpaper maker by @Cool_Kaushal123 | Sta 2D to 3D wallpaper maker by @Cool_Kaushal123 | Stardance...
|
Cool_Kaushal123
|
0
|
31.84
|
0
|
[]
|
[{"post_id": 64467, "ts": "202 [{"post_id": 64467, "ts": "2026-09-08T21:43:39Z", "hours": 8.4333, "text": "What I worked on was all the UI for the funciton page of the website. It still needs lot of improvment but I am getting their and their and still many bugs that need to be fixed and the challenging part now is to actually make it overalpp your existing background so that it is animated. Beucase windows dont have animated background and for sure not backgrounds that react to the cursor so it will be hard but I am trying to figure it out."}, {"post_id": 63890, "ts": "2026-09-07T22:16:28Z", "hours": 7.3667, "text": "What I am working on now is the actually functional part of the site. It doesn’t look pretty and it has many bugs, but I guess sometimes it works. There are still many things I am fixing. This is getting very complicated, but trust the process. Here is a short video; it probably won’t work yet though."}, {"post_id": 63225, "ts": "2026-09-06T22:18:13Z", "hours": 8.3667, "text": "I worked on this project a lot I have perfected the system or the way the websites function works so basically now when you upload a 2D image it makes it look really 3D it has shadows and I perfected all the distance anad speeds and which everything moves depending on the system so the next devlog will be about me finishing the websites actual function UI and all that."}, {"post_id": 62613, "ts": "2026-09-06T02:36:46Z", "hours": 7.6714, "text": "What I worked on right now is just the front page of the website, and I also gave an example of how it is supposed to work on the front page (the Spider-Man image). So basically, when you move your cursor on that image/wallpaper, it will move the background and move the front image at different speeds, and with the addition of shadows, it looks very sick. I know you would think 7 hours is a lot, but trust me, figuring out all the right amounts of everything took more than it should have because I am a beginner at coding. And also, I started on the actual function page."}]...
|
Title: 2D to 3D wallpaper maker by @Cool_Kaushal12 Title: 2D to 3D wallpaper maker by @Cool_Kaushal123 | Stardance
Devlogs:
What I worked on right now is just the front page of the website, and I also gave an example of how it is supposed to work on the front page (the Spider-Man image). So basically, when you move your cursor on that image/wallpaper, it will move the background and move the front image at different speeds, and with the addition of shadows, it looks very sick. I know you would think 7 hours is a lot, but trust me, figuring out all the right amounts of everything took more than it should have because I am a beginner at coding. And also, I started on the actual function page.
I worked on this project a lot I have perfected the system or the way the websites function works so basically now when you upload a 2D image it makes it look really 3D it has shadows and I perfected all the distance anad speeds and which everything moves depending on the system so the next devlog will be about me finishing the websites actual function UI and all that.
What I am working on now is the actually functional part of the site. It doesn’t look pretty and it has many bugs, but I guess sometimes it works. There are still many things I am fixing. This is getting very complicated, but trust the process. Here is a short video; it probably won’t work yet though.
What I worked on was all the UI for the funciton page of the website. It still needs lot of improvment but I am getting their and their and still many bugs that need to be fixed and the challenging part now is to actually make it overalpp your existing background so that it is animated. Beucase windows dont have animated background and for sure not backgrounds that react to the cursor so it will be hard but I am trying to figure it out....
|
1792936246.7398465
|
1793800246.7398465
|
|
26762
|
Split-flat Airline Flight Display board by @astra_ Split-flat Airline Flight Display board by @astra_celestine | Stardance...
|
astra_celestine
|
0
|
31.78
|
0
|
[]
|
[{"post_id": 23020, "ts": "202 [{"post_id": 23020, "ts": "2026-07-05T18:56:23Z", "hours": 20.5517, "text": "HI SO WHAT HAVE I BEEN DOING FOR THE PAST 20 HACKATIME HOURS??? Great question well, mostly PCBing. Since my last log, I’ve finished the module PCBs and ordered 20 of them, they’ve arrived! yay (thank god i live in a manufacturign country). so i started designing the main board( the shit that the ESP32, arduinos, all the other shenanigans, and the module pcbs are gonna be wired up to!). also sidenote (hold on i forgot …) what was it again… hold on oh right uh so after i finished the main board (which btw was pretty damn awesome but GOD it was a pain in the ass, elaborated in next paragraph), so apparently the manufacturer i was using for the 20 pcbs (they sent me 25 uh thanks for that i guess), ran out of materials so that’s great… thanks vietnamese customs control. so like i gotta scourage trhough facebook to find another manufacturer and one responoded yay but they’re like 2 provinces away aw :( so delivery’s gonna take 1 day.. bleghhhh kay anyway about the PCB designage, god i jeninly cannot find any footprints for the ESP32, and arduinos i have so uh i just winged it … i also then found out net labels actually link everything togehter, so i had to relabel everything… my stupid ass did that by changing the pin NUMBER. so i found out nothing worked so i had to go back and swap pin numbers for pin NAMES and that took a damn while… yeah uh okay so i also realized that the hole i had for the thingy (and by thingy i mean the uh ) (what’s it called) hall effect sensor is 3mm too low… gah so i adjusted it, i also made room for the pcb which the thing’s supposed to be attached to. OH BTW SPEAKING OF WHICH, for the design of the pCb to work, i’d have to desolder a buncha shit just to put the pins back on the other side of the modules’ board. so uh that’s great anyway soldering and desoldering for the first time … it went terribly at first but then i got the hang of it and it was really easy surprisingly… then i just had to fuck up by accidentally severing the trace to pIN1, eh i’ll fix it later via jumper cables,… one end is SMD though so that’s gonna be fun /s i also made some changes like making the middle portion of the thingamajig (CAD for the case) have holes on the bottom which the things can slide into for stability, and hollowing out the right part which only serves to hold in the thingy (mount the wheel), so now it won’t be an expensive monolith of plastique 🇫🇷. Kaboom, anyway seeya out!"}, {"post_id": 19173, "ts": "2026-06-30T13:01:58Z", "hours": 7.5661, "text": "not bothered to write shit uh tldr: designed the 3d model for the case of 1 module; it was… eh. could be better, will redesign, got it printed, sanded a bit, boom fits wellsomething something pcb wil rpint tmr"}, {"post_id": 17523, "ts": "2026-06-28T10:37:51Z", "hours": 0.8178, "text": "okay so, where do we start so, this morning, i went down to the hardware shop below my house, and uh yeah bought some stuff, screws, wire cutter, sandpaper went back home, first thing i did was to cut open a wire to prep for the power supply, uh ouch, cut myself :( anyway, moved over the circuit to a new breadboard that gives me more space to work with and that’s nice and all, the highlight of today so far is prolly me panicking about how i’m gonna make 16 of these modules. besides for GND and VCC, each motor takes up 4 I/O GPIO ports, and the sensor another input GPIO port. the ESP32 doesn’t have that many, and a lot are either input only or used for other system functions. uh i had 3 options basically, get 4 more ESP32’s, 2 more Arduino Mega’s, or some GPIO expanders (which uh idk how to use shrug emojji). i opted for arduino mega type shit kaboom"}, {"post_id": 17128, "ts": "2026-06-27T20:10:30Z", "hours": 0.6342, "text": "okay so it’s like 2 3 fuggin AM rn and i’m burnt asf but uh yeah basically since my last log (CADing), i did the thing (uhh hall effect / magnet sensor) so yeah cool awesome didn’t work at first, but uh after i did something (idk what i did, i just unplugged it a few times), it works! positive is 0 and neg is 1 for some reason :/ eh whatever i can just put a ! in front of it anyway uh yeah i put an LED diode between GPIO26 and GND because sillies and proof that i am NOT stupid and i actually know how to do shit yay kaboom see ya next time goobers"}, {"post_id": 16989, "ts": "2026-06-27T15:53:46Z", "hours": 0.5975, "text": "cool okay so after i got my motors working, i decided to start desiggning the cad because realistically i wouldn’t be able to do much besides just testing if shit works without a proper casing, realized i was recording the wrong damn tab for like half an hour, iuhh i stopped the thing and fahh lost half an hour of tracked work time :/ oh well anyway uh yeah cool i got the main case for the motor down, i’ll go down to the hardware store near me tmr and buy heat cast inserts so i can measure and do shit yay thumbs up emoji"}, {"post_id": 16799, "ts": "2026-06-27T08:43:50Z", "hours": 1.6097, "text": "Okay so cool! First hardware project in a long long time. I started off plugging the damn ESP32 and the other stuff into my breadboard, no lights turned on, my laptop didn’t recognize it, so I lowkey kinda panicked because I thought my ESP32 broke before I even got to use it. I scouraged thru the mess of cables in a random ass drawer in my house to find a USB-A to USB-C/Micro-B/A cable, and that somehow worked despite my $30 official Apple cable not working (idk i searched it up, apparently it has something to do with like standards). so that worked. problem: i have a mac, and i could not be bothered to install stuff on my thinkpad running arch btw, so uh i grabbed a cheap 2-cent USB-A to C adapter i bought for Daydream, and uh yeah it worked, except for some reason, no matter how hard i tried, the motor only vibrated, no rotation. i thought it was broken, and tried a diff one. didn’t work also, did some measuring with multimeter, nothing worked. so i just gave up and hoped for the best usign a diff tutorial, and i recoded everything, and it worked somehow? weird shit idk…. but yeah thumbs up emoji gah"}]...
|
Title: Split-flat Airline Flight Display board by Title: Split-flat Airline Flight Display board by @astra_celestine | Stardance
Devlogs:
Okay so cool! First hardware project in a long long time. I started off plugging the damn ESP32 and the other stuff into my breadboard, no lights turned on, my laptop didn’t recognize it, so I lowkey kinda panicked because I thought my ESP32 broke before I even got to use it. I scouraged thru the mess of cables in a random ass drawer in my house to find a USB-A to USB-C/Micro-B/A cable, and that somehow worked despite my $30 official Apple cable not working (idk i searched it up, apparently it has something to do with like standards). so that worked. problem: i have a mac, and i could not be bothered to install stuff on my thinkpad running arch btw, so uh i grabbed a cheap 2-cent USB-A to C adapter i bought for Daydream, and uh yeah it worked, except for some reason, no matter how hard i tried, the motor only vibrated, no rotation. i thought it was broken, and tried a diff one. didn’t work also, did some measuring with multimeter, nothing worked. so i just gave up and hoped for the best usign a diff tutorial, and i recoded everything, and it worked somehow? weird shit idk…. but yeah thumbs up emoji gah
cool okay so after i got my motors working, i decided to start desiggning the cad because realistically i wouldn’t be able to do much besides just testing if shit works without a proper casing, realized i was recording the wrong damn tab for like half an hour, iuhh i stopped the thing and fahh lost half an hour of tracked work time :/ oh well anyway uh yeah cool i got the main case for the motor down, i’ll go down to the hardware store near me tmr and buy heat cast inserts so i can measure and do shit yay thumbs up emoji
okay so it’s like 2 3 fuggin AM rn and i’m burnt asf but uh yeah basically since my last log (CADing), i did the thing (uhh hall effect / magnet sensor) so yeah cool awesome didn’t work at first, but uh after i did something (idk what i did, i just unplugged it a few times), it works! positive is 0 and neg is 1 for some reason :/ eh whatever i can just put a ! in front of it anyway uh yeah i put an LED diode between GPIO26 and GND because sillies and proof that i am NOT stupid and i actually know how to do shit yay kaboom see ya next time goobers
okay so, where do we start so, this morning, i went down to the hardware shop below my house, and uh yeah bought some stuff, screws, wire cutter, sandpaper went back home, first thing i did was to cut open a wire to prep for the power supply, uh ouch, cut myself :( anyway, moved over the circuit to a new breadboard that gives me more space to work with and that’s nice and all, the highlight of today so far is prolly me panicking about how i’m gonna make 16 of these modules. besides for GND and VCC, each motor takes up 4 I/O GPIO ports, and the sensor another input GPIO port. the ESP32 doesn’t have that many, and a lot are either input only or used for other system functions. uh i had 3 options basically, get 4 more ESP32’s, 2 more Arduino Mega’s, or some GPIO expanders (which uh idk how to use shrug emojji). i opted for arduino mega type shit kaboom
not bothered to write shit uh tldr: designed the 3d model for the case of 1 module; it was… eh. could be better, will redesign, got it printed, sanded a bit, boom fits wellsomething something pcb wil rpint tmr
HI SO WHAT HAVE I BEEN DOING FOR THE PAST 20 HACKATIME HOURS??? Great question well, mostly PCBing. Since my last log, I’ve finished the module PCBs and ordered 20 of them, they’ve arrived! yay (thank god i live in a manufacturign country). so i started designing the main board( the shit that the ESP32, arduinos, all the other shenanigans, and the module pcbs are gonna be wired up to!). also sidenote (hold on i forgot …) what was it again… hold on oh right uh so after i finished the main board (which btw was pretty damn awesome but GOD it was a pain in the ass, elaborated in next paragraph), so apparently the manufacturer i was using for the 20 pcbs (they sent me 25 uh thanks for that i guess), ran out of materials so that’s great… thanks vietnamese customs control. so like i gotta scourage trhough facebook to find another manufacturer and one responoded yay but they’re like 2 provinces away aw :( so delivery’s gonna take 1 day.. bleghhhh kay anyway about the PCB designage, god i jeninly cannot find any footprints for the ESP32, and arduinos i have so uh i just winged it … i also then found out net labels actually link everything togehter, so i had to relabel everything… my stupid ass did that by changing the pin NUMBER. so i found out nothing worked so i had to go back and swap pin numbers for pin NAMES and that took a damn while… yeah uh okay so i also realized that the hole i had for the thingy (and by thingy i mean the uh ) (what’s it called) hall effect sensor is 3mm too low… gah so i adjusted it, i also made room for the pcb which the thing’s supposed to be attached to. OH BTW SPEAKING OF WHICH, for the design of the pCb to work, i’d have to desolder a buncha shit just to put the pins back on the other side of the modules’ board. so uh that’s great anyway soldering and desoldering for the first time … it went terribly at first but then i got the hang of it and it was really easy surprisingly… then i just had to fuck up by accidentally severing the trace to pIN1, eh i’ll fix it later via jumper cables,… one end is SMD though so that’s gonna be fun /s i also made some changes like making the middle portion of the thingamajig (CAD for the case) have holes on the bottom which the things can slide into for stability, and hollowing out the right part which only serves to hold in the thingy (mount the wheel), so now it won’t be an expensive monolith of plastique 🇫🇷. Kaboom, anyway seeya out!...
|
1792695152.6033392
|
1793299952.6033392
|
|
19477
|
SwarmDrones by @nitishvankina | Stardance
|
nitishvankina
|
0
|
31.77
|
0
|
[]
|
[{"post_id": 17028, "ts": "202 [{"post_id": 17028, "ts": "2026-06-27T17:11:34Z", "hours": 3.6061, "text": "I am currently working on my natural language drones project. This project will hopefully allow me to control multiple drones at the same time, using natural language. This means that I can say things like: Scan the room for everyone wearing a red shirt. But I am hoping this project can be used for more important things, like search in a 3 mile radius for a missing dog, or scan for wildfires."}, {"post_id": 9584, "ts": "2026-06-15T23:26:30Z", "hours": 28.1681, "text": "I have started creating an app that allows users to connect multiple drones to one interface. The end goal is for the users to be able to talk to these drones through natural language. For example, saying things like hover 4 feet above the ground. I have implemented several python files that allow for a user to simulate this, but I want to move on to working with actual drones soon."}]...
|
Title: SwarmDrones by @nitishvankina | Stardance
Title: SwarmDrones by @nitishvankina | Stardance
Devlogs:
I have started creating an app that allows users to connect multiple drones to one interface. The end goal is for the users to be able to talk to these drones through natural language. For example, saying things like hover 4 feet above the ground. I have implemented several python files that allow for a user to simulate this, but I want to move on to working with actual drones soon.
I am currently working on my natural language drones project. This project will hopefully allow me to control multiple drones at the same time, using natural language. This means that I can say things like: Scan the room for everyone wearing a red shirt. But I am hoping this project can be used for more important things, like search in a 3 mile radius for a missing dog, or scan for wildfires....
|
1792918252.1162963
|
1793782252.1162963
|
|
18570
|
Enigma by @reimunyancat | Stardance
|
reimunyancat
|
1
|
31.75
|
135
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-24T04:49:50Z", "hours": 7.0, "multiplier": 19.69, "payout": 135, "blessing": "neutral", "text": "Enigma I built a working Enigma machine you can use, take apart, and see the electricity move through — all in the browser. Not a diagram of one, not a gif: the real cipher engine, wired to a 3D model you can rotate, peel open, and rewire with your hands. What it is The brain is a historically correct Enigma engine written once in C++ and shared two ways — a CLI binary and a WASM module compiled with Emscripten — so the thing in your browser ciphers letter-for-letter the same as the command line. Double-stepping, ring settings, reflector, plugboard, all of it. It passes the standard test vector (rotors I·II·III / reflector B / rings TOU / start HOU / plugs ABCDXZ → TOUHOU encrypts to MQGGFI ). On top of that engine sits a Three.js machine you can actually operate: type on the keyboard, the rotors turn to their real angles and the matching lamp lights up. Flip on X-ray and the wooden case goes translucent, revealing all 26 wires inside — and the exact current path of the key you just pressed lights up and sparks along the wire, traced straight from the engine’s own answer. What was hard The engine was the easy part. Making it look like the real thing is what fought back. The case isn’t one lid — a real Enigma comes apart in three: the main hinged lid, a fold-down flap over the plugboard, and a separate rotor cover with little letter windows. Each one had to hinge and occlude correctly without clipping through the others. The plugboard cables kept poking through the closed front cover. I spent two rounds shrinking how far they sagged before realizing the problem was never depth — the cables sat in front of the closed cover on the z-axis, so they’d punch through the wood no matter how short I made them. Pull them back behind the cover face and it finally read right. Reflector and entry wheel looked like “a rotor with the letters erased.” Turns out on the real machine they’re fixed inside the housing and never visible from outside — so I hid them in normal view and only expose the contacts under X-ray. What I’m proud of The plugboard you wire with your hands. Grab a socket, drag to another, and a cable snaps in; the wire stretches under your cursor while you drag, the target socket highlights blue, and the patch feeds straight back into the engine so the encryption and the X-ray wiring update live. Pulling a cable out works the same way. It feels like handling the real hardware, not clicking a form. And the honesty of it: one engine, verified against a known test vector, with nothing faked between what you see and what actually ciphers. How to test it Type something. Watch the rotors step and the lamps light. Long messages show the rotors carrying over, double-step and all. Hit X-ray. The case turns to glass; press a key and follow the lit current path through plugboard → rotors → reflector → back out to the lamp. Wire the plugboard. Drag between two sockets to pair them, drag a cable out to remove it — the cipher changes immediately. Open it up. Toggle the lid, the rotor cover, and the front flap to see how the real case comes apart. Trust but verify. Set rotors I·II·III, reflector B, rings TOU, start HOU, plugs ABCDXZ, and type TOUHOU — you should get MQGGFI , the canonical Enigma test vector. ", "repo": "https://github.com/reimunyancat/enigma", "demo": "https://reimunyancat.github.io/enigma/"}]...
|
[{"post_id": 64094, "ts": "202 [{"post_id": 64094, "ts": "2026-09-08T08:48:35Z", "hours": 6.5314, "text": "Devlog #11 Last devlog ended with me calling statistics-only scoring the last fake thing in the cracker, and promising the real attack. This is that The actual attack A crib is a guessed fragment of plaintext — operators were creatures of habit, and words like “Meldung” (report) show up in everything. With a crib, the cracker stops scoring vibes entirely: every candidate setting decrypts the text, and the crib either appears in it letter-for-letter or it doesn’t. Six exact letters out of 17,576 start positions leaves one setting standing. The five short intercepts that statistics couldn’t touch now each carry a crib — FUNKEN, MORGEN, STEINECKE (the Germans really did sign Steinecke twice) — and all of them break in under a second. One historical filter made it in: a letter never encrypts to itself, so a crib can only sit where no letter collides with the ciphertext. Fixed-offset guesses get rejected on that rule before the search even runs. The answer that was wrong and right The fun started in testing. One intercept’s documented start position is SWV, but my cracker’s top hit came back RVV — and RVV decrypts the message perfectly. Letter for letter, not just the crib window. I was convinced my engine was broken, so I compiled the reference C++ natively and compared: identical output on both. It’s not a bug. This key’s middle rotor sits exactly on its notch, so the famous double-step kicks the left rotor forward on the very first keypress — (R,V,V) and (S,W,V) converge to the same machine state before a single letter is encrypted. Two daily keys, one message. The codebreakers knew this class of equivalent settings; I rediscovered it by being confused for an hour. Next up The guided demo — the machine types, X-rays its own wiring, and cracks its own message while a first-time visitor watches."}, {"post_id": 60827, "ts": "2026-09-03T13:34:28Z", "hours": 8.8478, "text": "Devlog #10 This one is two small things instead of one big thing — share links, and a challenge mode built from real 1941 intercepts — plus an embarrassing amount of time spent not writing code. Most of it still isn’t properly wired in, but the hours happened, so here’s the honest checkpoint. Share links The whole machine state — rotors, reflector, rings, start position, plugboard — plus a message now fits in the URL hash, like #I.II.III.B:TOU:HOU:ABCDXZ:HELLOWORLD . Opening the link configures the machine and runs the message through it, so the person on the other end watches their lampboard spell out the plaintext. “I encrypted this, try reading it” finally works as a link. My first version of the format forgot the reflector. Anyone opening those links would have gotten confident garbage, and I only noticed while writing the parser. It costs four characters in the URL. Real intercepts, verified I didn’t want to invent fake historical messages, so I went looking for real ones — and that hunt ate the first chunk of the day. Ended up at Ostwald and Weierud’s Cryptologia paper (2017)( https://cryptocellar.org ), which lists 13 authentic Wehrmacht messages from 1941, transcribed from the actual message forms, with keys recovered by modern cryptanalysis. I picked six — from a three-word “morning report canceled” up to an SS tank division complaining that two other divisions are blocking its road. Each form starts with a 5-letter group that looks like ciphertext but isn’t — it’s the Kenngruppe, a network discriminant. The paper warns you to skip it before decrypting, and for once I read the instructions first. All six decrypt on the site’s engine to exactly the plaintext on the forms. The cracker only spoke English The crack mode scored decryptions by English letter frequencies. These messages are German. Added a German frequency table and scored by whichever language fits better. Still not enough for the short ones. I ran a parameter sweep over the scoring weights and the 18-to-76-letter intercepts never rank first under any combination. That’s not a bug, it’s information theory — and it’s exactly why Bletchley Park needed cribs instead of brute force. So the panel is honest about it: only the 214-letter intercept gets a “Crack positions” button (it recovers the real start position, SDV, in about half a second), and the short ones say why they’re decrypt-only. Where the hours actually went Reading a cryptology paper instead of writing components. Rewriting the challenge card layout more than once. Re-running the sweep every time I changed my mind about the scoring. The code diff is small; the day was not. The remaining wiring is still in progress. Next up Crib-based cracking, the known-plaintext attack. That’s what actually breaks the short ones, and it’s the historically accurate method"}, {"post_id": 57387, "ts": "2026-08-29T15:02:55Z", "hours": 9.3711, "text": "Improvements made based on feedback English + Korean support has been applied. English is the default. There was a point raised in the feedback that the translator did not work properly, making it difficult to read. I apologize for not being considerate of you all. A guide panel has been added. It was added because feedback suggested that it would be helpful to have text explanations of how it works. A brief explanation of the Enigma and its principles has been added using a translator. A performance mode has been added. I received feedback that the browser was lagging, so I was struggling to figure out how to handle it. Depending on the mode, I lowered the pixel ratio or optimized the wiring calculations. The logo engraving has been changed. The black background plate has been removed, and a transparent texture with a dark groove and a bright rim has been created using a dual pass to make it look like it was carved into wood. To be honest, it still hasn’t reached the level I wanted, but I have wasted so much time here that I am honestly exhausted and plan to postpone it until next time. Rotation lock and camera presets have been added. I simply did exactly what was requested in the feedback, so there isn’t much to say about it. The crack mode was created simply because I was caught up in the strange idea that if there is an original cipher, there should also be a decryption function. It was the absolute hell; I will never do it again. Web workers use the same WASM engine as the simulator to [set] initial positions Scoring through brute force is difficult, involving the Interval of Concordance (IoC) as the primary axis plus the chi-square auxiliary for character frequency, plaintext previews for the top 5, and a button to apply directly to the machine… Trial and error: When I scored only the first 48 characters of each candidate in the full scope, a completely wrong rotor order happened to get a higher IoC and beat the correct answer (0.0677 vs 0.0651). However, when I selected the top 8 from a 64-character sample and re-scored and reordered the entire sentence, the correct answer won by a landslide (0.058 vs 0.012). Complete reconstruction of X-ray wiring. Honestly, I left the existing wiring as it was because it was a hassle, but it was tough working on it this time. I roughly standardized the thickness and connected the wires properly. Honestly, I still need to tidy it up a bit more, but I’m exhausted. Lastly, since some people claim my devlog was written by AI, I intentionally didn’t write a title or use Markdown this time. However, I’m not sure what the best approach would be. Please give me lots of feedback in the comments."}, {"post_id": 14774, "ts": "2026-06-24T00:17:32Z", "hours": 1.18, "text": "Devlog #6 I asked the question — “is this actually accurate?” — and the answer was no. A real Enigma’s case isn’t one big lid you flip up. It splits into three: the main hinged lid, a fold-down flap in front of the plugboard, and a separate cover over the rotors with little letter windows. So I rebuilt all three. What actually works now Plugboard front flap. On the real machine the plugboard sat behind a panel that folds down from a hinge at the bottom. I added that front panel and tied it to the lid state, so closing the lid folds the flap up over the front too — the way it would look packed away for transport. Rotor cover (Walzenabdeckung). Instead of leaving the rotors fully exposed, there’s now a cover that hides everything except three letter windows and the finger-wheel slits, with brass bezels around each window. It rides its own ▢ 로터 toggle — closed gives the authentic operating look, open shows the rotors. Lid interior. The inside of the lid used to be empty; the real one carried spare bulbs, red/green filters, and a metal plate. Added a bulb-holder strip, the two filters, and a nameplate — and kept them on independent materials so they stay solid in X-ray instead of going transparent along with the case. Stuff that tripped me up Fully sinking the rotors into a well — so only the finger wheel and a single letter peek out, like the real machine — tangles with the X-ray wiring coordinates I’d already placed. Rather than move all the internal geometry, I got the same read from the cover: close it and you only ever see the letter windows. Same look, none of the rework."}, {"post_id": 14017, "ts": "2026-06-23T00:16:51Z", "hours": 1.0214, "text": "Devlog #5 The engine has been correct for a while now — rotor stepping, ring settings, reflector, all of it. This session wasn’t about correctness, it was about feel : making the wooden lid open and shut for real, and making a keypress light up an actual path of current through the machine instead of just blinking a lamp at the end. Then I committed all three changes in one go and the build blew up in my face. Worth it. What actually works now The lid hinges open and closed. A ▣ 뚜껑 toggle drives a hinge pivot, and the render loop lerps it toward the target angle so it swings instead of snapping shut. Rebuilt the lid as a real box. My first lid was a single flat plank — it clipped straight through the rotors and only covered half the keyboard. Now it’s a hollow box (top + front + two side walls) with the hinge raised above the rotor tops, so it clears everything when it closes. Live current path. Until now, pressing a key did nothing to the cabling — the keyboard-to-plugboard route was never visualized at all. Now I take the trace the engine hands back and draw the whole route — keycap → plugboard → rotor contacts → lamp — as one glowing tube, with a spark running along it. Heavier materials pass. Nudged the wood/brass/steel roughness, metalness, and env-map strength a notch heavier to kill the last of the plastic look. Stuff that tripped me up I committed all three changes at once and the build died on boot — three TypeScript errors, all from one mistake. My new lid store collided with an existing lid mesh variable, so the compiler threw Property 'subscribe' does not exist... , an implicit- any fell out of that, and on top of it I’d pasted over and deleted a partnerOf helper. Aliasing the import to lidStore and restoring the helper cleared all three at once. Lesson, paid the usual way: when you add a store with the same name as an existing mesh variable, alias it at the import line first — before TypeScript makes you. Next up The case opens and the wiring lights up, but it isn’t historically right yet. The real Enigma’s case came apart in three pieces — the main lid, a fold-down flap in front of the plugboard, and a separate cover over the rotors — and mine is still one lid sitting over fully exposed rotors. Next session: make it match the real thing."}, {"post_id": 12366, "ts": "2026-06-20T05:50:39Z", "hours": 2.8122, "text": "X-ray mode This is the part I said I was actually here for. Flip a switch and the wooden case turns to glass so you can see what’s been sealed inside the whole time. Getting it to look right was the fun part. Getting it to stay working cost me the better part of an afternoon. What I built Case → glass. The casing shells (body, rotor housing, plugboard panel) drop to ~28% opacity with depth-writing turned off, so you can see straight through the wood. A lit interior. A warm point light kicks on inside the case the moment X-ray turns on — otherwise the guts just read as a dark smudge instead of actual hardware. The hidden hardware. Built everything that’s normally sealed away: a battery block with brass terminals, and thick orange cable looms routing down beneath the rotors. The wiring map. A 26-strand bundle draws the actual internal permutation for the current rotor / ring / position setup, so what you see under the glass matches what the engine is really doing. Then it went dark — on a fresh load only Everything looked perfect while I was building it. Then I cleared the cache, cold-booted the dev server to check it clean… and X-ray did nothing . Solid wood. The button highlighted, the wiring was clearly toggling on, the opacity was being set — and the case flat-out refused to turn transparent. I burned a good while convinced a git reset had eaten the fix. The one-line culprit It wasn’t git — the code was byte-for-byte the version I’d already signed off on. The real reason: in three.js (r137+), if you flip a material’s transparent flag at runtime, the change won’t take effect unless you also set material.needsUpdate = true . My toggle was setting transparent and opacity but never needsUpdate , so blending never actually switched on and opacity = 0.28 was silently ignored. It “worked” during development purely because hot-reload kept rebuilding the materials from scratch — a real cold load exposed it instantly. One line in the toggle loop and the glass came back. Next up: make the current actually flow — each keypress lighting up the live signal path through the rotors and off the reflector, with a real cable running from the key you pressed into the loom, so the glow starts where your finger does."}, {"post_id": 11108, "ts": "2026-06-18T05:15:28Z", "hours": 1.0419, "text": "Hardware fidelity pass — “wait, is this actually what the real Enigma looks like?” After the electrical signal path was rendering, I pulled up real Kriegsmarine M4 photos to compare — and the 3D model didn’t hold up. So before adding anything new, this one is a “make it historically accurate first” pass. What was wrong Floating letters. The rotor alphabet was hovering in mid-air beside each wheel instead of being on it. On the real machine the letters are engraved around the rotor’s circumference and you read one through a small window. The reflector and entry wheel looked fake. They were basically copy-pasted rotors with the letters wiped off. In reality the reflector (UKW) and entry wheel (ETW) are fixed and tucked inside the housing — there are no spinning lettered drums there at all. Lopsided UI. A huge dead zone under the input field was squashing the 3D view into a thin strip. Input/output drift. The I/O readout was center-aligned, so every keypress shoved the existing letters further left. Genuinely uncomfortable to type on. What I did Wrapped the alphabet onto the rotor circumference with engraved grooves, contact rings, and brass window bezels, so you read it through the top window like the real thing. Rebuilt the reflector and ETW as smaller dark drums seated in the housing, and set them to stay hidden in the normal view — they’ll surface later in X-ray mode, where the internal wiring belongs. Set the 3D viewport to flex: 1 so it fills the space, and re-framed the camera. Switched the I/O readout to a fixed-width, left-anchored layout, so input and output line up and grow rightward instead of sliding around. A lesson paid for in blood Squashed a stack of messy single-digit commits into one clean commit — then ran git reset --hard with an uncommitted layout fix still in the working tree and watched it evaporate. Re-did it in two minutes, but the takeaway stands: run git status before --hard . Always. Next up: the X-ray translucent mode that exposes the internal wiring and lights up the live signal path through the rotors. That’s the part I actually started this whole thing for."}, {"post_id": 9008, "ts": "2026-06-15T00:56:55Z", "hours": 0.5225, "text": "Electrical signal implementation"}, {"post_id": 8746, "ts": "2026-06-14T15:27:12Z", "hours": 0.3472, "text": "I created an initial version to beautifully implement the existing CLI Enigma on the web."}]...
|
Title: Enigma by @reimunyancat | Stardance
Devlog Title: Enigma by @reimunyancat | Stardance
Devlogs:
I created an initial version to beautifully implement the existing CLI Enigma on the web.
Electrical signal implementation
Hardware fidelity pass — “wait, is this actually what the real Enigma looks like?” After the electrical signal path was rendering, I pulled up real Kriegsmarine M4 photos to compare — and the 3D model didn’t hold up. So before adding anything new, this one is a “make it historically accurate first” pass. What was wrong Floating letters. The rotor alphabet was hovering in mid-air beside each wheel instead of being on it. On the real machine the letters are engraved around the rotor’s circumference and you read one through a small window. The reflector and entry wheel looked fake. They were basically copy-pasted rotors with the letters wiped off. In reality the reflector (UKW) and entry wheel (ETW) are fixed and tucked inside the housing — there are no spinning lettered drums there at all. Lopsided UI. A huge dead zone under the input field was squashing the 3D view into a thin strip. Input/output drift. The I/O readout was center-aligned, so every keypress shoved the existing letters further left. Genuinely uncomfortable to type on. What I did Wrapped the alphabet onto the rotor circumference with engraved grooves, contact rings, and brass window bezels, so you read it through the top window like the real thing. Rebuilt the reflector and ETW as smaller dark drums seated in the housing, and set them to stay hidden in the normal view — they’ll surface later in X-ray mode, where the internal wiring belongs. Set the 3D viewport to flex: 1 so it fills the space, and re-framed the camera. Switched the I/O readout to a fixed-width, left-anchored layout, so input and output line up and grow rightward instead of sliding around. A lesson paid for in blood Squashed a stack of messy single-digit commits into one clean commit — then ran git reset --hard with an uncommitted layout fix still in the working tree and watched it evaporate. Re-did it in two minutes, but the takeaway stands: run git status before --hard . Always. Next up: the X-ray translucent mode that exposes the internal wiring and lights up the live signal path through the rotors. That’s the part I actually started this whole thing for.
X-ray mode This is the part I said I was actually here for. Flip a switch and the wooden case turns to glass so you can see what’s been sealed inside the whole time. Getting it to look right was the fun part. Getting it to stay working cost me the better part of an afternoon. What I built Case → glass. The casing shells (body, rotor housing, plugboard panel) drop to ~28% opacity with depth-writing turned off, so you can see straight through the wood. A lit interior. A warm point light kicks on inside the case the moment X-ray turns on — otherwise the guts just read as a dark smudge instead of actual hardware. The hidden hardware. Built everything that’s normally sealed away: a battery block with brass terminals, and thick orange cable looms routing down beneath the rotors. The wiring map. A 26-strand bundle draws the actual internal permutation for the current rotor / ring / position setup, so what you see under the glass matches what the engine is really doing. Then it went dark — on a fresh load only Everything looked perfect while I was building it. Then I cleared the cache, cold-booted the dev server to check it clean… and X-ray did nothing . Solid wood. The button highlighted, the wiring was clearly toggling on, the opacity was being set — and the case flat-out refused to turn transparent. I burned a good while convinced a git reset had eaten the fix. The one-line culprit It wasn’t git — the code was byte-for-byte the version I’d already signed off on. The real reason: in three.js (r137+), if you flip a material’s transparent flag at runtime, the change won’t take effect unless you also set material.needsUpdate = true . My toggle was setting transparent and opacity but never needsUpdate , so blending never actually switched on and opacity = 0.28 was silently ignored. It “worked” during development purely because hot-reload kept rebuilding the materials from scratch — a real cold load exposed it instantly. One line in the toggle loop and the glass came back. Next up: make the current actually flow — each keypress lighting up the live signal path through the rotors and off the reflector, with a real cable running from the key you pressed into the loom, so the glow starts where your finger does.
Devlog #5 The engine has been correct for a while now — rotor stepping, ring settings, reflector, all of it. This session wasn’t about correctness, it was about feel : making the wooden lid open and shut for real, and making a keypress light up an actual path of current through the machine instead of just blinking a lamp at the end. Then I committed all three changes in one go and the build blew up in my face. Worth it. What actually works now The lid hinges open and closed. A ▣ 뚜껑 toggle drives a hinge pivot, and the render loop lerps it toward the target angle so it swings instead of snapping shut. Rebuilt the lid as a real box. My first lid was a single flat plank — it clipped straight through the rotors and only covered half the keyboard. Now it’s a hollow box (top + front + two side walls) with the hinge raised above the rotor tops, so it clears everything when it closes. Live current path. Until now, pressing a key did nothing to the cabling — the keyboard-to-plugboard route was never visualized at all. Now I take the trace the engine hands back and draw the whole route — keycap → plugboard → rotor contacts → lamp — as one glowing tube, with a spark running along it. Heavier materials pass. Nudged the wood/brass/steel roughness, metalness, and env-map strength a notch heavier to kill the last of the plastic look. Stuff that tripped me up I committed all three changes at once and the build died on boot — three TypeScript errors, all from one mistake. My new lid store collided with an existing lid mesh variable, so the compiler threw Property 'subscribe' does not exist... , an implicit- any fell out of that, and on top of it I’d pasted over and deleted a partnerOf helper. Aliasing the import to lidStore and restoring the helper cleared all three at once. Lesson, paid the usual way: when you add a store with the same name as an existing mesh variable, alias it at the import line first — before TypeScript makes you. Next up The case opens and the wiring lights up, but it isn’t historically right yet. The real Enigma’s case came apart in three pieces — the main lid, a fold-down flap in front of the plugboard, and a separate cover over the rotors — and mine is still one lid sitting over fully exposed rotors. Next session: make it match the real thing.
Devlog #6 I asked the question — “is this actually accurate?” — and the answer was no. A real Enigma’s case isn’t one big lid you flip up. It splits into three: the main hinged lid, a fold-down flap in front of the plugboard, and a separate cover over the rotors with little letter windows. So I rebuilt all three. What actually works now Plugboard front flap. On the real machine the plugboard sat behind a panel that folds down from a hinge at the bottom. I added that front panel and tied it to the lid state, so closing the lid folds the flap up over the front too — the way it would look packed away for transport. Rotor cover (Walzenabdeckung). Instead of leaving the rotors fully exposed, there’s now a cover that hides everything except three letter windows and the finger-wheel slits, with brass bezels around each window. It rides its own ▢ 로터 toggle — closed gives the authentic operating look, open shows the rotors. Lid interior. The inside of the lid used to be empty; the real one carried spare bulbs, red/green filters, and a metal plate. Added a bulb-holder strip, the two filters, and a nameplate — and kept them on independent materials so they stay solid in X-ray instead of going transparent along with the case. Stuff that tripped me up Fully sinking the rotors into a well — so only the finger wheel and a single letter peek out, like the real machine — tangles with the X-ray wiring coordinates I’d already placed. Rather than move all the internal geometry, I got the same read from the cover: close it and you only ever see the letter windows. Same look, none of the rework.
Improvements made based on feedback English + Korean support has been applied. English is the default. There was a point raised in the feedback that the translator did not work properly, making it difficult to read. I apologize for not being considerate of you all. A guide panel has been added. It was added because feedback suggested that it would be helpful to have text explanations of how it works. A brief explanation of the Enigma and its principles has been added using a translator. A performance mode has been added. I received feedback that the browser was lagging, so I was struggling to figure out how to handle it. Depending on the mode, I lowered the pixel ratio or optimized the wiring calculations. The logo engraving has been changed. The black background plate has been removed, and a transparent texture with a dark groove and a bright rim has been created using a dual pass to make it look like it was carved into wood. To be honest, it still hasn’t reached the level I wanted, but I have wasted so much time here that I am honestly exhausted and plan to postpone it until next time. Rotation lock and camera presets have been added. I simply did exactly what was requested in the feedback, so there isn’t much to say about it. The crack mode was created simply because I was caught up in the strange idea that if there is an original cipher, there should also be a decryption function. It was the absolute hell; I will never do it again. Web workers use the same WASM engine as the simulator to [set] initial positions Scoring through brute force is difficult, involving the Interval of Concordance (IoC) as the primary axis plus the chi-square auxiliary for character frequency, plaintext previews for the top 5, and a button to apply directly to the machine… Trial and error: When I scored only the first 48 characters of each candidate in the full scope, a completely wrong rotor order happened to get a higher IoC and beat the correct answer (0.0677 vs 0.0651). However, when I selected the top 8 from a 64-character sample and re-scored and reordered the entire sentence, the correct answer won by a landslide (0.058 vs 0.012). Complete reconstruction of X-ray wiring. Honestly, I left the existing wiring as it was because it was a hassle, but it was tough working on it this time. I roughly standardized the thickness and connected the wires properly. Honestly, I still need to tidy it up a bit more, but I’m exhausted. Lastly, since some people claim my devlog was written by AI, I intentionally didn’t write a title or use Markdown this time. However, I’m not sure what the best approach would be. Please give me lots of feedback in the comments.
Devlog #10 This one is two small things instead of one big thing — share links, and a challenge mode built from real 1941 intercepts — plus an embarrassing amount of time spent not writing code. Most of it still isn’t properly wired in, but the hours happened, so here’s the honest checkpoint. Share links The whole machine state — rotors, reflector, rings, start position, plugboard — plus a message now fits in the URL hash, like #I.II.III.B:TOU:HOU:ABCDXZ:HELLOWORLD . Opening the link configures the machine and runs the message through it, so the person on the other end watches their lampboard spell out the plaintext. “I encrypted this, try reading it” finally works as a link. My first version of the format forgot the reflector. Anyone opening those links would have gotten confident garbage, and I only noticed while writing the parser. It costs four characters in the URL. Real intercepts, verified I didn’t want to invent fake historical messages, so I went looking for real ones — and that hunt ate the first chunk of the day. Ended up at Ostwald and Weierud’s Cryptologia paper (2017)( https://cryptocellar.org ), which lists 13 authentic Wehrmacht messages from 1941, transcribed from the actual message forms, with keys recovered by modern cryptanalysis. I picked six — from a three-word “morning report canceled” up to an SS tank division complaining that two other divisions are blocking its road. Each form starts with a 5-letter group that looks like ciphertext but isn’t — it’s the Kenngruppe, a network discriminant. The paper warns you to skip it before decrypting, and for once I read the instructions first. All six decrypt on the site’s engine to exactly the plaintext on the forms. The cracker only spoke English The crack mode scored decryptions by English letter frequencies. These messages are German. Added a German frequency table and scored by whichever language fits better. Still not enough for the short ones. I ran a parameter sweep over the scoring weights and the 18-to-76-letter intercepts never rank first under any combination. That’s not a bug, it’s information theory — and it’s exactly why Bletchley Park needed cribs instead of brute force. So the panel is honest about it: only the 214-letter intercept gets a “Crack positions” button (it recovers the real start position, SDV, in about half a second), and the short ones say why they’re decrypt-only. Where the hours actually went Reading a cryptology paper instead of writing components. Rewriting the challenge card layout more than once. Re-running the sweep every time I changed my mind about the scoring. The code diff is small; the day was not. The remaining wiring is still in progress. Next up Crib-based cracking, the known-plaintext attack. That’s what actually breaks the short ones, and it’s the historically accurate method
Devlog #11 Last devlog ended with me calling statistics-only scoring the last fake thing in the cracker, and promising the real attack. This is that The actual attack A crib is a guessed fragment of plaintext — operators were creatures of habit, and words like “Meldung” (report) show up in everything. With a crib, the cracker stops scoring vibes entirely: every candidate setting decrypts the text, and the crib either appears in it letter-for-letter or it doesn’t. Six exact letters out of 17,576 start positions leaves one setting standing. The five short intercepts that statistics couldn’t touch now each carry a crib — FUNKEN, MORGEN, STEINECKE (the Germans really did sign Steinecke twice) — and all of them break in under a second. One historical filter made it in: a letter never encrypts to itself, so a crib can only sit where no letter collides with the ciphertext. Fixed-offset guesses get rejected on that rule before the search even runs. The answer that was wrong and right The fun started in testing. One intercept’s documented start position is SWV, but my cracker’s top hit came back RVV — and RVV decrypts the message perfectly. Letter for letter, not just the crib window. I was convinced my engine was broken, so I compiled the reference C++ natively and compared: identical output on both. It’s not a bug. This key’s middle rotor sits exactly on its notch, so the famous double-step kicks the left rotor forward on the very first keypress — (R,V,V) and (S,W,V) converge to the same machine state before a single letter is encrypted. Two daily keys, one message. The codebreakers knew this class of equivalent settings; I rediscovered it by being confused for an hour. Next up The guided demo — the machine types, X-rays its own wiring, and cracks its own message while a first-time visitor watches.
Ships:
Enigma I built a working Enigma machine you can use, take apart, and see the electricity move through — all in the browser. Not a diagram of one, not a gif: the real cipher engine, wired to a 3D model you can rotate, peel open, and rewire with your hands. What it is The brain is a historically correct Enigma engine written once in C++ and shared two ways — a CLI binary and a WASM module compiled with Emscripten — so the thing in your browser ciphers letter-for-letter the same as the command line. Double-stepping, ring settings, reflector, plugboard, all of it. It passes the standard test vector (rotors I·II·III / reflector B / rings TOU / start HOU / plugs ABCDXZ → TOUHOU encrypts to MQGGFI ). On top of that engine sits a Three.js machine you can actually operate: type on the keyboard, the rotors turn to their real angles and the matching lamp lights up. Flip on X-ray and the wooden case goes translucent, revealing all 26 wires inside — and the exact current path of the key you just pressed lights up and sparks along the wire, traced straight from the engine’s own answer. What was hard The engine was the easy part. Making it look like the real thing is what fought back. The case isn’t one lid — a real Enigma comes apart in three: the main hinged lid, a fold-down flap over the plugboard, and a separate rotor cover with little letter windows. Each one had to hinge and occlude correctly without clipping through the others. The plugboard cables kept poking through the closed front cover. I spent two rounds shrinking how far they sagged before realizing the problem was never depth — the cables sat in front of the closed cover on the z-axis, so they’d punch through the wood no matter how short I made them. Pull them back behind the cover face and it finally read right. Reflector and entry wheel looked like “a rotor with the letters erased.” Turns out on the real machine they’re fixed inside the housing and never visible from outside — so I hid them in normal view and only expose the contacts under X-ray. What I’m proud of The plugboard you wire with your hands. Grab a socket, drag to another, and a cable snaps in; the wire stretches under your cursor while you drag, the target socket highlights blue, and the patch feeds straight back into the engine so the encryption and the X-ray wiring update live. Pulling a cable out works the same way. It feels like handling the real hardware, not clicking a form. And the honesty of it: one engine, verified against a known test vector, with nothing faked between what you see and what actually ciphers. How to test it Type something. Watch the rotors step and the lamps light. Long messages show the rotors carrying over, double-step and all. Hit X-ray. The case turns to glass; press a key and follow the lit current path through plugboard → rotors → reflector → back out to the lamp. Wire the plugboard. Drag between two sockets to pair them, drag a cable out to remove it — the cipher changes immediately. Open it up. Toggle the lid, the rotor cover, and the front flap to see how the real case comes apart. Trust but verify. Set rotors I·II·III, reflector B, rings TOU, start HOU, plugs ABCDXZ, and type TOUHOU — you should get MQGGFI , the canonical Enigma test vector. ...
|
1792860520.874676
|
1793724520.874676
|
|
30991
|
DIY Arcade machine by @suklaasukkulayt | Stardance
|
suklaasukkulayt
|
0
|
31.75
|
0
|
[]
|
[{"post_id": 66407, "ts": "202 [{"post_id": 66407, "ts": "2026-09-12T06:58:32Z", "hours": 8.6439, "text": "Devlog 8 The project should now be ready to ship! (I still have to edit the GitHub repo) Last devlog we took the laptop out, so we could make intake holes so we did that. The we installed a intake fan to the back of the machine for more airflow. We mainly just painted some stuff and also used some hot glue to smooth out some surfaces. We also added some KuuppaKart artwork ! You can also play the game for yourself! (link at the end of this devlog). We also made the funny thing around the screen look a bit better . Also we added a time system to the game that shows lap time, race time, and best time. So overall we just made the machine look better . (I probably just can’t remember because it’s been over a month) Link to the game"}, {"post_id": 43968, "ts": "2026-08-09T13:17:44Z", "hours": 9.0131, "text": "Devlog 7 Project is in a bad shape but we are forced to do a devlog because of the 10 hour limit . We took the laptop out so we could make a intake hole for the laptop so it doesn’t overheat. We fixed some paint issues and applied a layer of paint protection. We also added a RFID card reader that starts the game. We also added a controls text to the machine. The game now has a first person mode and FOV slider . We also added some stuff inside the machine so it’s more stable and we added a 3d-printed lock mechanism so the door stays in place better. We also added a hack club stiker."}, {"post_id": 36936, "ts": "2026-07-29T10:47:56Z", "hours": 0.3, "text": "PLEASE READ THE LAST DEVLOG BEFORE WATCHING THIS VIDEO This is the video that was supposed to be in my last devlog but it bugged and I couldn’t attach it"}, {"post_id": 36307, "ts": "2026-07-28T10:32:18Z", "hours": 6.8267, "text": "Another big game update! Here is what we did: 1. Added a secret button to make AI go crazy by setting it’s rotation speed to 0.1 :D 2. Added a difficulty changer, difficulties: Easy: the ai is a little slower and starts behind the player Normal: just normal gameplay Hard: The AI is faster and the player is slower (to win you almost have to use shortcuts) 3. Bumping into the AI car is now funnier, because now it stops the AI car from fixing itself so it can now go flying :D) 4. If you didn’t hit all checkpoints before hitting the finish line, the game now tells you about it in the lap counter text 5. If the player wins, the camera goes on top of the AI car so you can see where it was. 6. If you fall through the ground, the game now puts you to where you were instead of the start Then we also fixed a lot of bugs , most of the were caused by the new features. Next devlog we will actually add the second level (and fix some issues with the machine) and then the project is completed ! (also and the video below isn’t the most clear but it showcases all the added features)"}, {"post_id": 30776, "ts": "2026-07-18T17:24:18Z", "hours": 3.6072, "text": "Fourth devlog. Massive game update! We updated the map with more stuff, people, gas pumps, flowers and fire. We also changed the boost text’s language to english, made the start text blink, added a lap system and made it so you can also look backwards. For the machine we added a ventilation system(right now it isn’t the best though) and put back the box around the screen. We also put a wooden chair that I made in school so you can sit while you play. Really great. Next devlog I will probably add a second level or something. Made with @Makkonen"}, {"post_id": 30162, "ts": "2026-07-17T14:50:55Z", "hours": 1.2833, "text": "Third devlog. We added more artwork and finished painting. We made it possible to close the door again because the racing wheel was blocking it. Controller (wheel) now works properly. We added an useless antenna to the back for no reason. Made with @Makkonen"}, {"post_id": 30098, "ts": "2026-07-17T12:28:26Z", "hours": 1.5742, "text": "Second devlog of this project. First we removed the c64 mini joystick and the speakers. We replaced them with a racing wheel (i forgot that i had one) and the spekers we replaced with the elements and front casing of an old bluetooth speaker for better sound quality (still using the PAM8403 aliexpress amp). We also stabilized the laptop more so it won’t fall. We had to make more holes for the power button but we will fill them in the next devlog. We also added an useless cable and a warning sticker to the back for no reason. Made with @Makkonen"}, {"post_id": 22921, "ts": "2026-07-05T15:49:35Z", "hours": 0.5, "text": "I made an arcade machine with @Makkonen . It has an old laptop, old logitech pc speakers(with aliexpress amplifier), c64 mini controller, rgb strip, coin slot, artwork (space invanders and a car) and a lot of cardboard, paint and tape. The game it plays is a racing game that i made in unity in a a coding class and modified for more arcade feeling (for example, added start screen). The game has an opponent, boost button(in the bottom left corner), start screen, restart button, checkpoints(win condition) and music. In future updates there will be more levels(currently it only has one). Also the game is really hard with the c64 mini joystick. I will add future devlogs when i finish the painting because when we ripped some off the tape (to open the doors), it ripped also some of the tape off. Also we basically finished this project before realising that we need to record a timelapse. Thanks @Makkonen for helping me with this!"}]...
|
Title: DIY Arcade machine by @suklaasukkulayt | St Title: DIY Arcade machine by @suklaasukkulayt | Stardance
Devlogs:
I made an arcade machine with @Makkonen . It has an old laptop, old logitech pc speakers(with aliexpress amplifier), c64 mini controller, rgb strip, coin slot, artwork (space invanders and a car) and a lot of cardboard, paint and tape. The game it plays is a racing game that i made in unity in a a coding class and modified for more arcade feeling (for example, added start screen). The game has an opponent, boost button(in the bottom left corner), start screen, restart button, checkpoints(win condition) and music. In future updates there will be more levels(currently it only has one). Also the game is really hard with the c64 mini joystick. I will add future devlogs when i finish the painting because when we ripped some off the tape (to open the doors), it ripped also some of the tape off. Also we basically finished this project before realising that we need to record a timelapse. Thanks @Makkonen for helping me with this!
Second devlog of this project. First we removed the c64 mini joystick and the speakers. We replaced them with a racing wheel (i forgot that i had one) and the spekers we replaced with the elements and front casing of an old bluetooth speaker for better sound quality (still using the PAM8403 aliexpress amp). We also stabilized the laptop more so it won’t fall. We had to make more holes for the power button but we will fill them in the next devlog. We also added an useless cable and a warning sticker to the back for no reason. Made with @Makkonen
Third devlog. We added more artwork and finished painting. We made it possible to close the door again because the racing wheel was blocking it. Controller (wheel) now works properly. We added an useless antenna to the back for no reason. Made with @Makkonen
Fourth devlog. Massive game update! We updated the map with more stuff, people, gas pumps, flowers and fire. We also changed the boost text’s language to english, made the start text blink, added a lap system and made it so you can also look backwards. For the machine we added a ventilation system(right now it isn’t the best though) and put back the box around the screen. We also put a wooden chair that I made in school so you can sit while you play. Really great. Next devlog I will probably add a second level or something. Made with @Makkonen
Another big game update! Here is what we did: 1. Added a secret button to make AI go crazy by setting it’s rotation speed to 0.1 :D 2. Added a difficulty changer, difficulties: Easy: the ai is a little slower and starts behind the player Normal: just normal gameplay Hard: The AI is faster and the player is slower (to win you almost have to use shortcuts) 3. Bumping into the AI car is now funnier, because now it stops the AI car from fixing itself so it can now go flying :D) 4. If you didn’t hit all checkpoints before hitting the finish line, the game now tells you about it in the lap counter text 5. If the player wins, the camera goes on top of the AI car so you can see where it was. 6. If you fall through the ground, the game now puts you to where you were instead of the start Then we also fixed a lot of bugs , most of the were caused by the new features. Next devlog we will actually add the second level (and fix some issues with the machine) and then the project is completed ! (also and the video below isn’t the most clear but it showcases all the added features)
PLEASE READ THE LAST DEVLOG BEFORE WATCHING THIS VIDEO This is the video that was supposed to be in my last devlog but it bugged and I couldn’t attach it
Devlog 7 Project is in a bad shape but we are forced to do a devlog because of the 10 hour limit . We took the laptop out so we could make a intake hole for the laptop so it doesn’t overheat. We fixed some paint issues and applied a layer of paint protection. We also added a RFID card reader that starts the game. We also added a controls text to the machine. The game now has a first person mode and FOV slider . We also added some stuff inside the machine so it’s more stable and we added a 3d-printed lock mechanism so the door stays in place better. We also added a hack club stiker.
Devlog 8 The project should now be ready to ship! (I still have to edit the GitHub repo) Last devlog we took the laptop out, so we could make intake holes so we did that. The we installed a intake fan to the back of the machine for more airflow. We mainly just painted some stuff and also used some hot glue to smooth out some surfaces. We also added some KuuppaKart artwork ! You can also play the game for yourself! (link at the end of this devlog). We also made the funny thing around the screen look a bit better . Also we added a time system to the game that shows lap time, race time, and best time. So overall we just made the machine look better . (I probably just can’t remember because it’s been over a month) Link to the game...
|
1792684475.1447215
|
1793289275.1447215
|
|
51595
|
Lunar Lander Video Game by @Akhil_Rajesh | Stardan Lunar Lander Video Game by @Akhil_Rajesh | Stardance...
|
Akhil_Rajesh
|
0
|
31.69
|
0
|
[]
|
[{"post_id": 78820, "ts": "202 [{"post_id": 78820, "ts": "2026-10-11T18:03:30Z", "hours": 0.2533, "text": "Devlog #6 Working on adding the rovers and flag on the surface in photopea and also using tack.pics to map out coordinates!"}, {"post_id": 78131, "ts": "2026-10-09T17:38:48Z", "hours": 3.2286, "text": "Devlog #5 Added the animations for the rcs and main engines, with correct (hopefully!) logic. [Picture shown with all rcs firing)"}, {"post_id": 75276, "ts": "2026-09-29T16:53:33Z", "hours": 10.1392, "text": "Devlog #4 I decided to seperate the landing part (previously called stage 2) from the rest of the game as of now. This is because of completely diffrent styles of drawing, and a JS mis-match. I’ll probably link those later though."}, {"post_id": 66472, "ts": "2026-09-12T09:49:26Z", "hours": 4.4775, "text": "Devlog #3 Stage 1 basically completed (though I want to revisit it to make the physics better). Added a intro-page showing all controls etc and status indicator in the HUD and other small adjustments."}, {"post_id": 63490, "ts": "2026-09-07T11:33:53Z", "hours": 5.7336, "text": "Devlog #2 Stage 1 (Translunar Flight) almost completed. Basic HUD showing Time elapsed, Velocity, etc has been added."}, {"post_id": 59756, "ts": "2026-09-01T18:01:30Z", "hours": 7.8536, "text": "Devlog #1 I almost finished on stage 1 of this project, that is, an autogenerated starry background, a Moon and a blue orb (which would eventually be the earth!), gravity for the moon, a red triangle representing the spacecraft as of now, velocity, controls, ability to enter/exit orbit, orbit detection, and most importantly, CRASH DETECTION!!!!. Here are some screenshots."}]...
|
Title: Lunar Lander Video Game by @Akhil_Rajesh | Title: Lunar Lander Video Game by @Akhil_Rajesh | Stardance
Devlogs:
Devlog #1 I almost finished on stage 1 of this project, that is, an autogenerated starry background, a Moon and a blue orb (which would eventually be the earth!), gravity for the moon, a red triangle representing the spacecraft as of now, velocity, controls, ability to enter/exit orbit, orbit detection, and most importantly, CRASH DETECTION!!!!. Here are some screenshots.
Devlog #2 Stage 1 (Translunar Flight) almost completed. Basic HUD showing Time elapsed, Velocity, etc has been added.
Devlog #3 Stage 1 basically completed (though I want to revisit it to make the physics better). Added a intro-page showing all controls etc and status indicator in the HUD and other small adjustments.
Devlog #4 I decided to seperate the landing part (previously called stage 2) from the rest of the game as of now. This is because of completely diffrent styles of drawing, and a JS mis-match. I’ll probably link those later though.
Devlog #5 Added the animations for the rcs and main engines, with correct (hopefully!) logic. [Picture shown with all rcs firing)
Devlog #6 Working on adding the rovers and flag on the surface in photopea and also using tack.pics to map out coordinates!...
|
1792677051.3998606
|
1793281851.3998606
|
|
64322
|
NookOS by @Athannn | Stardance
|
Athannn
|
2
|
31.68
|
40
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-26T13:03:42Z", "hours": 8.0, "multiplier": 4.23, "payout": 35, "blessing": "neutral", "text": "Finally shipping ColorfulNook OS for WEBOS 2 !! So welcm back to ColorfulNook OS. Ywahh after saying I’d ship it like soo many times, I’m finally shipping it for WEBOS 2 :D For Reviewerss :–> This started as a super basic page with one window and basically nothing working. After that, I’ve changed the whole UI, added the ColorfulNOOK (it rerfers to a small colorful corner of room) background, and made the windows draggable, closable, and reopenable. I also added a bunch of apps: Notes app, Anime Gallery (not a NEW app btw manhy new pics), Calculator, Music, Browser (With my project Webgram as Home), and a 25-minute Timer. I am also using a custom subdomain for the project like all my other oness. And then there’s the AWESOME looking Clock widget hehe, which took me a while to get looking good, but I rlyy Love it !!! I also went through some feedback and fixed a few things that were bugging ppl (the reviewers) like the welcome text overflowing and the close button not looking like a close button lol. Small fixes, but it makes OUR OS way easier to use. That’s basically it, the NEW ColorfulNook OS !! It changed names and took way more updates than I expected, but it’s finally here. Go try it out and let’s see what you think !! Also Follow here & Star on Github if u LIKE itt :)", "repo": "https://github.com/its-techxtreme/nookos", "demo": "https://ColourfulNook-OS.techxtreme.me"}, {"ship_num": 2, "ts": "2026-09-22T05:50:06Z", "hours": 2.0, "multiplier": 1.95, "payout": 5, "blessing": "neutral", "text": "Welcome to the ship of NookOS. The name is NookOS because I’m planning something for WebOS 2 mission. Right now, it’s just a basic web OS that I’ve made. It’s got the clean colors, but a good-looking style right now, at least on the UI part, I think so it’s pretty good for a basic WebOS project :) So this is the first work that I’m shipping right now. What NookOS is, is basically it has three apps. First is the welcome screen. That is not much of an app. It’s just the welcome screen that just welcomes you into the webOS. The second is called as a scratch on the webOS screen, but it’s actually more like a scratch pad where you can basically dump text homework or anything. Yeah, basically you can just dump whatever text you want to, and it will save it. The third app is anime, that is on the screen, and also you can call it anime gallery. It basically lists some images and shows a preview of the images in the same window. Right now it has three images that are anime images. That is, first is doodle of a guy, Second is “Horimiya,” and Third is just some anime girl. So that’s basically it in this project. What I’m planning next, is something that resembles a corner of a room for WebOS 2. So let’s see. First, let’s get approved it for the WebOS 1 mission, and then I will be starting the WebOS 2 mission on the same project.", "repo": "https://github.com/its-techxtreme/nookos", "demo": "https://ColourfulNook-OS.techxtreme.me"}]...
|
[{"post_id": 83808, "ts": "202 [{"post_id": 83808, "ts": "2026-10-28T17:26:15Z", "hours": 4.5928, "text": "Devloggg #15 (the longest one yet) Wlcm back to Colorful NookOS. Last time I finally decorated that basic header. This stretch is the biggest one so far so ywah it gets the long heading Camera stopped being a plain box cuz I had to revamp it like otherrss. There are lighting filters now, Plain Warm Cool Bright Fade Noir, and a 3s and 10s timer that counts down on the view. Snap is an actual proper looking real like camera shutter. Now we have a NEW app “Gallery”. We got many editing features too like the real gallery like Rotate, a actual crop which u can controllll, Undo, Redo, and Discard are there so you can back out of a bad crop. Save this and Save all can be used to download the imagesss !!! Then a Terminal, ywahh a actual terminal. Dock icon and also on the right click menu. Prompt is C:\\ColorfulNOOK and help lists the commands. dir, cd, type for notes, echo, and start actually opens an app. The help text was too dark at first so I made it cream so its properly visible Calculator was still the old grade pad why would i not give it a REVAMPPP. Now it has Basic, Sci, Grade, and Tip. Sci does sin cos tan sqrt log and powers, in degrees. Grade is got over out of and shows the percent. Tip splits a bill. The keys grow when you pull the window bigger bug-free finalyyyyyyyyyy Alsooo the phone. It was drawing the desktop and shrinking it, which looked tiny. Now it knows the screen width. Rnn Icons sit in columns that fit, windows open under the header instead of way below the icons, Also dragging a window doesnt fight the scroll. Long press on the sofa opens the menu but i am not satisfied with the changes so I am gonna work on mobile view, BTWW This WEBOS is specifically aimed towards desktops, so the mobile view wont be that good Tysmmmm for Readingg !!"}, {"post_id": 83610, "ts": "2026-10-28T07:36:22Z", "hours": 2.8703, "text": "Devloggg #14 (This one will be a shorter one) Wlcm back to Colorful NookOS. Sooo Last time Settings was revamped and Widgets got its own app. This time I kept going on the stuff that was still the first version so that the WEBOS is now Aesthetically good looking The header was still that flat coral strip, that i just put in the very beginning btww rnn it is a cream bar, ink line, mustard edge, three dots, and ColorfulNOOK with the OS chip in the middle. Also I got this bug that Windows and icons were sliding under it, btw i fixed itt. Alsooo There is a tiny hide on the right, and it takes the bar away until you refresh !! Music app looks like a RLYYYYY COOL player now. Alsoo now we hv Tilted covers, big play button, and Open Spotify is its own bar under the controls hehe. The old songs played with no sound so I put four short tunes in the app. Window Rain, Old Tape, Late Night, Porch Air, named after how they sound Timer beep used to blip and die so if u missed it then u wouldnt know that the timer ended. Now it holds until Stop is pressed. Also I redesigned Settings to look AMAZINGG UI-wise. There was also some bugs in window resizing when curved corner were turned on, I fixed those too. Also I removed the coral option & added a anime optio for wallpapers which look crazzyy on the OS. That’s basically itt. The header was the part that still looked like day one so ywahh :D Tysmmmm for Readingg !!"}, {"post_id": 83230, "ts": "2026-10-27T12:40:17Z", "hours": 3.2522, "text": "Devloggg #13 Wlcm back to Colorful NookOS. I hv been LOCKED IN… & grinding now, bcz the Great END is Near……………. Timer is not stuck on 25 anymore. Rnnn, it hs hours minutes and seconds, and you type the time under them. When it hits zero it actually beeps too unlike some of those on the web hehe Settings had a glowup rnn. U can still pick the OG Nook or the flat colors, or drop in your own picture. Theme options is Nook, Night, or Candy. Text can be Small, Normal, or Big. Font is Fredoka, Plain, or Story. Icons can sit in two columns or one long one. And Curvy corners, which rounds the windows and the tiles for those APPLE FANBOYS…… When u right click anywhere free on screen u hv the options for Settings, Widgets, and Web. Widgets is a new app, four little squares for the icon cuz I didnt hv a great idea here. You tap a widget to put it on the desk, and if it is already there it just says so, so no duplicates. Hide on the widget takes it back off :) Alsoooo the app names were still trying to live inside the tile and leaking out when the screen was weird. So what i did was makeing the symbol the in the tile now, bigger and actually in the middle, alsoo i put the names under the apps btw they were not properly visible so I added text borders Alsoo I barely noticed that the window bar was shrinking when you dragged the window small and the control lights were getting squished. That bar stays the same size now. The inside of the app can grow, the bar does not finallyyyyy Widgets got a softer look using Neumorphism (Took me some time to grasp) Alsoo three new ones you add from the Widgets app. To do : where you type a line to add ur goals and alsoo click it to cross it off. Spotify : You open it from the Spotify widget or from a Spotify button inside Music app, and the Spotify site sits in its own window the same way Web holds Webgram !! Quotes : Just Shows Some Quotes That’s basically itt. Still more I wanna work on the Music App next & the Spotify Window is not properly loading yet so Now I gotta find the reason as to why Tysmmmm for Reading guyzz!!"}, {"post_id": 83185, "ts": "2026-10-27T06:14:12Z", "hours": 3.4014, "text": "Devloggg #12 Wlcm back to Colorful NookOS. Last time it was the desk widgets and the names finally looking like names. This time I kept going on the apps themselves because a few of them were still the first version I threw in at the start, So lets make sure that when I ship the v3 everything is AWESOMEEEE :) So first there is a Camera now. You hit Open, it tries to use the camera, and Snap keeps a little roll under it. If the browser blocks it, it just says so instead of dying quietly (i experienced the dying & didnt knew why it was not working ). Also closing the window turns the camera off, so its safe Then the dock. The apps were one long line of text capsules (as the reviewers last time mentioned) and even on a laptop they just fell off the screen (cuz they were stacked in a cloumn). BTwwww Now they are actual tiles with little icons, Welcome, Anime, Notes, Calc, Music, Web, Timer, Settings ,Camera, sitting in two columns. Alsooo U can drag them around and they stay where you put them after a refresh (using local storage) Anime gallery was the one that looked the worst. It was just white buttons and the picture was tiny. Now the picture is the whole point, a big poster up top, and the picks are small posters with the names sitting on a cream strip. The one you clicked gets a mustard outline. Still the same 11 pics btw, 11 is still the lucky number duhhh And as for Notes. I had not touched that app since the very beginning when it was just a pile of boxes btww Now it is a list on the left and a page on the right. New adds one, the first line becomes the name in the list, Delete takes the one you have open, and the old notes still load. The little Notes card on the desk still counts them That’s basically itt. Still more I wanna do but the apps were starting to feel stuck on the first session so ywahh Tysmmmm for Readingg !!"}, {"post_id": 82747, "ts": "2026-10-25T18:41:12Z", "hours": 3.4053, "text": "Devloggg #11 (Longer work than others) Wlcm back to Colorful NookOS. Last time it was mostlyy the phone layout and the windows actually letting you pull the edges btw this time I finally sat down with the desk itself, because the right side was just the clock and then a bunch of empty sofa as the reviewers told me to improve that portion So yeah, widgets are the New major updates & quite a pile of them. There is a date card now. It says the day, then a big number, then the month, so today it is Sat, 24, Oct. Under that I put a Timer card that stays on 25:00 with the pomodoro, a Music card that shows whatever song is on (Window Rain, Old Tape, Late Night, Porch Air), a Pin where you can write a line and it stays after refresh, and a Notes card that just tells you how many notes you have. And the one I like the most is the anime polaroid. It is tilted a bit, stuck on with a red thumbtack, and Next flips through the gallery without opening the whole app. Click it if you do want the gallery You can drag them around. If you right click one you get the little bar. alsooo the Dots change the color, The almightty Fix stops it from sliding around (it turns into Free), and Hide takes it off the desk. If you hide one and then miss it, right click an empty spot, hit Widgets, and pick it back up into business Also went back to the resize thing because pulling an edge was mostly just making a bigger yellow or aqua box. RNNn the stuff inside actually grows with the window. Calculator keys get bigger, the clock stays a circle, the welcome window is not a huge empty mustard card anymore (a bug from the very start of webos2 u can sayy) Alsoo I was writing every label in tiny letters which looked kinda unfinished, so the names are normal now. Welcome, Anime, Notes, Calc, Music, Web, Timer. Same on the widgets. That’s basically itt, and what I did. Thoo Still more I wanna do but the widgets were the part that was the main thing heree. Tysmmmm for Reading"}, {"post_id": 82023, "ts": "2026-10-23T14:18:39Z", "hours": 2.2069, "text": "Devloggg #10 Wlcm back to Colorful NookOS. So last time I said the main reason the ratings were kinda low was that I never really checked it on a phone, and then I just left it. So yeah this time I actually sat down and did that, plus a bunch of window stuff that was still annoying me. First thing, you can resize the windows now. Like grab the edges and the corners and pull. Before it was just drag the top bar around and that was it. And if a window was maximized and you grabbed an edge, it drops out of the big size instead of FORCING that nuh uh, I am gonna be full-sized. Also some apps have a smallest size so the calculator doesn’t turn into a tiny useless square. Then I went back to maximize because it was still weird on a few apps. The clock was the one that bugged me earlier, it was going oval, that part was already fixed so it stays a circle and just gets bigger. But the web app was the opposite problem. When you hit the green button it got a huge window and the site inside was still a skinny phone page sitting in the middle. So now the browser actually uses the width you gave it. On a normal monitor a site can be desktop. Notes do their own thing too, the cards reflow instead of getting stretched. And then the phone part, which is what I said I would do. If the screen is narrow the app icons stop being one long column and wrap into rows under the bar. The clock widget shrinks but it stays round, so that the numbers don’t fall off it. When you open an app the window comes up almost the full width, under the icons rnn. The lights are a bit easier to tap. You can also drag a window with a finger, and pull the edges. I checked it narrow and I checked it wide again so the desktop doesn’t turn into the phone layout when you have room. That’s basically it for this one. Still more I wanna do but the mobile thing was the one I kept putting off so ywahh. Tysmmmm for Reading"}, {"post_id": 78286, "ts": "2026-10-10T09:13:00Z", "hours": 1.9514, "text": "Devloggg #9 Wlcm back to Colorful NookOS. So yeah, this is a devlog after a long time. Last time, I had shipped for the WebOS 2 mission. I don’t know why, but I got really low ratings . So I’m going to work more on this project. And yeah, there was one thing maybe that I think is the main reason, that I didn’t really check it on mobile, so it wasn’t really optimized for screen touch devices. So I’m going to work on that again. And so I have planned many things for this new V3 version of the Colorful NookOS. So the first thing that I did today was I improved the window manager. Now, windows sit properly. They do not start below any widgets or anything, fixed a few bugs. And now added proper navigation buttons like the minimize, maximize, and the close buttons. They work properly, and they have the symbol, so it is more easier to see. And also I was fixing some bugs that I encountered during making it. That is the aspect ratio and the actual graphics inside. The apps were getting stretched instead of being scaled. So I fixed that also, and those are basically the main changes that I did in this devlog. Tysm for Reading"}, {"post_id": 73937, "ts": "2026-09-26T11:22:22Z", "hours": 2.6514, "text": "Devloggg #8 So welcome back to ColorfulNook OS. Yeah, I haven’t shipped it yet. I was talking about shipping it in the last devlog, btw actually, I finally finished rating 18 projects yesterday. Ywah it took me a lot of time to finish them cuz i am lazyy So because of that, I couldn’t really check the Feedback until yesterday. And after seeing the reviews, I decided to do one more go and make some changes before WebOS-2. Sooo first of all, I have finally fixed the most obv bug. That I don’t know why, but I was just procrastinating that I will fix it later, bro. That was the welcome text was leaking out of its app icon. So now it’s all fixed the container has been extended. Other than that, also the close button, which was basically a red circle just beside the window name on the top window bar. Ppl didn’t rlyy understand that it was the close button , so they thought that there was no close button. So now I shifted the red button to the right side and added a small “x” inside so that now it looks obv like a close button and ppl actually get it. Other than that, I did one more thing. The clock and day in the top bar was looking really ugly to me. I finally did was built this crazyyy looking, fully dope CLOCK widget You can just see it on the right side of the web OS. It looks so great over there. And you know what? Obviously, it got all the hand and the detailed work. But if you click the widget, it also opens an app window in which you can see the clock and the time in a digital format, as well as it disappears from the window. So, there are no duplicate clocks. The clock part took me a long time because at first when I tried building a clock, it turned out really uglyy af. Then I had to go to GitHub, and also I talked with Manus AI, and then after looking at so much clock-related code, then I was finally able to build myself this Awesomee aesthetic clock . So that was the final app addition for now. Also, some people requested that I should add more anime pictures to the anime gallery. So yeah, I have added plenty more images. Now the image count is around 11. Why 11? Because 11 is my favorite and lucky number duhhh That’s basically what I have done in this devlog. This time for sure I will be shipping it. Now let’s see what kind of a rating I get"}, {"post_id": 73134, "ts": "2026-09-24T13:34:55Z", "hours": 1.3547, "text": "Devloggg #7 Welcome back to ColorfulNook OS. So, I added two new apps in this update, and also we now have a custom subdomain. Instead of using the same Vercel again, bcz obv I like using customm subdomains, so almost all of my projects are hosted on the subdomain based on my original domain, that is techxtreme.me So now the new URL for Colorful Nuke OS is as follows: https://ColourfulNook-OS.techxtreme.me Regarding the two new apps that I have added, one of them is called web browser. I think so what it does is pretty obvious. Also the web browser’s main homepage is pointed towards https://webgram.techxtreme.me Which is one of Myy old Stardance projectss, which was for the new tab mission. It’s an Instagram theme new tab. And you can just type the URL in the top bar and press go, or also use the Webgram interface for accessing the search bar or some apps. As for the second app, it is called Timer. It’s basically a simple 25-minute timer. You can just open it, click start, and there are also a few controls to pause and reset. Rnn there’s a fixed time set, u can’t change the time of the timer. Its set to 25 only, so you can only use it to count 25 minutes Other than that, you can’t do much on the app. Last one thing I would like to say, I hv also updated the README with the new featuress, and probably, I will be shipping it for WebOS 2 now. Let’s see what happens next !!"}, {"post_id": 72676, "ts": "2026-09-23T13:55:19Z", "hours": 1.2358, "text": "Devloggg #6 So welcome back to Colorful Nuke OS. This time I got the name rytt. Ywahh so basically in this devlog, what I did was added one more new app. This app is called the Music app, and obvious from the name, what it does is plays music. It’s basically a music playerrr nothing that Great. Rn I have used the images from the anime gallery as the album cover, and the music is actually from some website that I don’t remember the name exactly rn…. btw yahh the same website that I pointed the URL to during the Webgram project. I’m basically using the same songs. Btw it’s the Music app is over here. I have also added some more operators like the bracket and percentage operators to the calculator and changed the layout of the calculator. So now the calculator’s keypad is a perfect rectangle. The single key out of the rectangle was kind of bugging me, so I made it so that all the keys are filled now. Other than that, nothing else much. Next I will be adding some more things to the music player, like probably a Spotify embed and something more. Let’s see. That’s it, basically for now tho"}, {"post_id": 72541, "ts": "2026-09-23T05:14:49Z", "hours": 0.7667, "text": "Devloggg #5 Welcome back to NookOS. So yeah, our ship did get approved, and now I have added one more app into the ColorfulNook OS. Sorry, my bad. I again forgot that the name has been changed Welcome to ColorfulNook OS. So I added one more app, and that app is something that we all know, obviously, that is calculator. Now, we all know what a calculator does, so I’m not going to explain what exactly it is hehe So, I have added it, and here’s a picture of the Coool calculator. And so it works pretty good. It can also give you errors properly. It shows that it’s an error, and it also shows infinity when the answer is infinity. So ywahhh That’s basically it for this devlog. Cya Nextt Timee !"}, {"post_id": 72257, "ts": "2026-09-22T15:21:02Z", "hours": 2.2944, "text": "Devloggg #4 Welcome to devlog 4 of NookOS, Actually, the name has been changed nowww it’s ColorfulNook OS So basically, I changed the whole UI. Earlier it was just a plain color, normal. And it was more like the similar code that I did for CypherOS. And I don’t know why? My most guess is that bcz the design was very simple and plain. Shipwright thought that it was fully AI-made, but no, it was my CipherOS like (not a copy). Even though it’s no longer a Stardance project, the CipherOS is no longer a Stardance project, it’s still on my GitHub repo, and it was approved because it was human-made =_=. btw still, I went ahead anywayy. I was going to do some changes for the WebOS 2 machine. So I started with that. So now I have finally started making it look like a actual theme. So yeah, I added the colorful house nook, (that means the corner of a rooom) background. Added some blurs so the text and windows are actually more visible. And alsooo I scrapped the Scratch app and added a new app instead +_+ that is the normal notepad that we generally use in such projectss, and got rid of the curved window endings and made it more cubic and robustt. That’s basically what I have done. It’s a major UI upgrade. And yeah, obviously then I had to update the README too. Now I will continue working on more changes on NookOS after I click to recertify."}, {"post_id": 72107, "ts": "2026-09-22T05:42:07Z", "hours": 0.82, "text": "Devloggg #3 So in NukeOS, I have made new changes, and the new changes includes adding a new app that is called Anime Gallery. Just “anime” on the WebOS screen, but it’s basically an anime gallery. Right now, it stores three anime pics selected by me. So one of them is a sketch of a anime guy doodle, the second one is a pic of Horimiya, and the third one is just some cute anime idol iggg :) That’s the main app that I added. Other than that, I have also made a proper README for the project now and also pushed it to Vercel and GitHub. So the repository is live, as well as the live pages over there. And now I’m thinking that the project is ready for WebOS 1 mission, and maybe I should ship it."}, {"post_id": 72048, "ts": "2026-09-22T02:09:12Z", "hours": 0.9942, "text": "Devloggg #2 So now Nook OS is somewhat usable, you can sayy ig. So finally, I made the windows draggable. The welcome window is now draggable, closable, and also added a few text buttons to open it easily, and also added one more app called Scratch. This is basically like Notepad, but you can’t make separate notes. You basically just paste whatever you want to dump over there. And ywah It does not save it after refresh right now, but that is what I’m going to do next. Now the windows are movable, draggable, and closable, and also reopenable. So ywahh, That’s basically it."}, {"post_id": 71846, "ts": "2026-09-21T17:16:17Z", "hours": 0.6356, "text": "Devloggg #1 Welcome to the first devlog of NookOS. Yeah, I am starting the web OS again. And ywahh Cypher OS is no more, unfortunately. Most of my projects are gone btw this is a new beginning. Let’s keep it strong. Ywahh there are onlyy 9 days remaining for Stardance, but I am going to try to do my best again and lock in. So welcome to Nuke OS | Basically, right now what I just built is three files, index.html, some style.css, and a script.js. So yeah, that’s basically it. I made some little bit of code. So obviously nothing works yet. It’s just a static page with like a plain simple background, and a window with some text. So we will now make it into a basic webOS step by step."}]...
|
Title: NookOS by @Athannn | Stardance
Devlogs:
De Title: NookOS by @Athannn | Stardance
Devlogs:
Devloggg #1 Welcome to the first devlog of NookOS. Yeah, I am starting the web OS again. And ywahh Cypher OS is no more, unfortunately. Most of my projects are gone btw this is a new beginning. Let’s keep it strong. Ywahh there are onlyy 9 days remaining for Stardance, but I am going to try to do my best again and lock in. So welcome to Nuke OS | Basically, right now what I just built is three files, index.html, some style.css, and a script.js. So yeah, that’s basically it. I made some little bit of code. So obviously nothing works yet. It’s just a static page with like a plain simple background, and a window with some text. So we will now make it into a basic webOS step by step.
Devloggg #2 So now Nook OS is somewhat usable, you can sayy ig. So finally, I made the windows draggable. The welcome window is now draggable, closable, and also added a few text buttons to open it easily, and also added one more app called Scratch. This is basically like Notepad, but you can’t make separate notes. You basically just paste whatever you want to dump over there. And ywah It does not save it after refresh right now, but that is what I’m going to do next. Now the windows are movable, draggable, and closable, and also reopenable. So ywahh, That’s basically it.
Devloggg #3 So in NukeOS, I have made new changes, and the new changes includes adding a new app that is called Anime Gallery. Just “anime” on the WebOS screen, but it’s basically an anime gallery. Right now, it stores three anime pics selected by me. So one of them is a sketch of a anime guy doodle, the second one is a pic of Horimiya, and the third one is just some cute anime idol iggg :) That’s the main app that I added. Other than that, I have also made a proper README for the project now and also pushed it to Vercel and GitHub. So the repository is live, as well as the live pages over there. And now I’m thinking that the project is ready for WebOS 1 mission, and maybe I should ship it.
Devloggg #4 Welcome to devlog 4 of NookOS, Actually, the name has been changed nowww it’s ColorfulNook OS So basically, I changed the whole UI. Earlier it was just a plain color, normal. And it was more like the similar code that I did for CypherOS. And I don’t know why? My most guess is that bcz the design was very simple and plain. Shipwright thought that it was fully AI-made, but no, it was my CipherOS like (not a copy). Even though it’s no longer a Stardance project, the CipherOS is no longer a Stardance project, it’s still on my GitHub repo, and it was approved because it was human-made =_=. btw still, I went ahead anywayy. I was going to do some changes for the WebOS 2 machine. So I started with that. So now I have finally started making it look like a actual theme. So yeah, I added the colorful house nook, (that means the corner of a rooom) background. Added some blurs so the text and windows are actually more visible. And alsooo I scrapped the Scratch app and added a new app instead +_+ that is the normal notepad that we generally use in such projectss, and got rid of the curved window endings and made it more cubic and robustt. That’s basically what I have done. It’s a major UI upgrade. And yeah, obviously then I had to update the README too. Now I will continue working on more changes on NookOS after I click to recertify.
Devloggg #5 Welcome back to NookOS. So yeah, our ship did get approved, and now I have added one more app into the ColorfulNook OS. Sorry, my bad. I again forgot that the name has been changed Welcome to ColorfulNook OS. So I added one more app, and that app is something that we all know, obviously, that is calculator. Now, we all know what a calculator does, so I’m not going to explain what exactly it is hehe So, I have added it, and here’s a picture of the Coool calculator. And so it works pretty good. It can also give you errors properly. It shows that it’s an error, and it also shows infinity when the answer is infinity. So ywahhh That’s basically it for this devlog. Cya Nextt Timee !
Devloggg #6 So welcome back to Colorful Nuke OS. This time I got the name rytt. Ywahh so basically in this devlog, what I did was added one more new app. This app is called the Music app, and obvious from the name, what it does is plays music. It’s basically a music playerrr nothing that Great. Rn I have used the images from the anime gallery as the album cover, and the music is actually from some website that I don’t remember the name exactly rn…. btw yahh the same website that I pointed the URL to during the Webgram project. I’m basically using the same songs. Btw it’s the Music app is over here. I have also added some more operators like the bracket and percentage operators to the calculator and changed the layout of the calculator. So now the calculator’s keypad is a perfect rectangle. The single key out of the rectangle was kind of bugging me, so I made it so that all the keys are filled now. Other than that, nothing else much. Next I will be adding some more things to the music player, like probably a Spotify embed and something more. Let’s see. That’s it, basically for now tho
Devloggg #7 Welcome back to ColorfulNook OS. So, I added two new apps in this update, and also we now have a custom subdomain. Instead of using the same Vercel again, bcz obv I like using customm subdomains, so almost all of my projects are hosted on the subdomain based on my original domain, that is techxtreme.me So now the new URL for Colorful Nuke OS is as follows: https://ColourfulNook-OS.techxtreme.me Regarding the two new apps that I have added, one of them is called web browser. I think so what it does is pretty obvious. Also the web browser’s main homepage is pointed towards https://webgram.techxtreme.me Which is one of Myy old Stardance projectss, which was for the new tab mission. It’s an Instagram theme new tab. And you can just type the URL in the top bar and press go, or also use the Webgram interface for accessing the search bar or some apps. As for the second app, it is called Timer. It’s basically a simple 25-minute timer. You can just open it, click start, and there are also a few controls to pause and reset. Rnn there’s a fixed time set, u can’t change the time of the timer. Its set to 25 only, so you can only use it to count 25 minutes Other than that, you can’t do much on the app. Last one thing I would like to say, I hv also updated the README with the new featuress, and probably, I will be shipping it for WebOS 2 now. Let’s see what happens next !!
Devloggg #8 So welcome back to ColorfulNook OS. Yeah, I haven’t shipped it yet. I was talking about shipping it in the last devlog, btw actually, I finally finished rating 18 projects yesterday. Ywah it took me a lot of time to finish them cuz i am lazyy So because of that, I couldn’t really check the Feedback until yesterday. And after seeing the reviews, I decided to do one more go and make some changes before WebOS-2. Sooo first of all, I have finally fixed the most obv bug. That I don’t know why, but I was just procrastinating that I will fix it later, bro. That was the welcome text was leaking out of its app icon. So now it’s all fixed the container has been extended. Other than that, also the close button, which was basically a red circle just beside the window name on the top window bar. Ppl didn’t rlyy understand that it was the close button , so they thought that there was no close button. So now I shifted the red button to the right side and added a small “x” inside so that now it looks obv like a close button and ppl actually get it. Other than that, I did one more thing. The clock and day in the top bar was looking really ugly to me. I finally did was built this crazyyy looking, fully dope CLOCK widget You can just see it on the right side of the web OS. It looks so great over there. And you know what? Obviously, it got all the hand and the detailed work. But if you click the widget, it also opens an app window in which you can see the clock and the time in a digital format, as well as it disappears from the window. So, there are no duplicate clocks. The clock part took me a long time because at first when I tried building a clock, it turned out really uglyy af. Then I had to go to GitHub, and also I talked with Manus AI, and then after looking at so much clock-related code, then I was finally able to build myself this Awesomee aesthetic clock . So that was the final app addition for now. Also, some people requested that I should add more anime pictures to the anime gallery. So yeah, I have added plenty more images. Now the image count is around 11. Why 11? Because 11 is my favorite and lucky number duhhh That’s basically what I have done in this devlog. This time for sure I will be shipping it. Now let’s see what kind of a rating I get
Devloggg #9 Wlcm back to Colorful NookOS. So yeah, this is a devlog after a long time. Last time, I had shipped for the WebOS 2 mission. I don’t know why, but I got really low ratings . So I’m going to work more on this project. And yeah, there was one thing maybe that I think is the main reason, that I didn’t really check it on mobile, so it wasn’t really optimized for screen touch devices. So I’m going to work on that again. And so I have planned many things for this new V3 version of the Colorful NookOS. So the first thing that I did today was I improved the window manager. Now, windows sit properly. They do not start below any widgets or anything, fixed a few bugs. And now added proper navigation buttons like the minimize, maximize, and the close buttons. They work properly, and they have the symbol, so it is more easier to see. And also I was fixing some bugs that I encountered during making it. That is the aspect ratio and the actual graphics inside. The apps were getting stretched instead of being scaled. So I fixed that also, and those are basically the main changes that I did in this devlog. Tysm for Reading
Devloggg #10 Wlcm back to Colorful NookOS. So last time I said the main reason the ratings were kinda low was that I never really checked it on a phone, and then I just left it. So yeah this time I actually sat down and did that, plus a bunch of window stuff that was still annoying me. First thing, you can resize the windows now. Like grab the edges and the corners and pull. Before it was just drag the top bar around and that was it. And if a window was maximized and you grabbed an edge, it drops out of the big size instead of FORCING that nuh uh, I am gonna be full-sized. Also some apps have a smallest size so the calculator doesn’t turn into a tiny useless square. Then I went back to maximize because it was still weird on a few apps. The clock was the one that bugged me earlier, it was going oval, that part was already fixed so it stays a circle and just gets bigger. But the web app was the opposite problem. When you hit the green button it got a huge window and the site inside was still a skinny phone page sitting in the middle. So now the browser actually uses the width you gave it. On a normal monitor a site can be desktop. Notes do their own thing too, the cards reflow instead of getting stretched. And then the phone part, which is what I said I would do. If the screen is narrow the app icons stop being one long column and wrap into rows under the bar. The clock widget shrinks but it stays round, so that the numbers don’t fall off it. When you open an app the window comes up almost the full width, under the icons rnn. The lights are a bit easier to tap. You can also drag a window with a finger, and pull the edges. I checked it narrow and I checked it wide again so the desktop doesn’t turn into the phone layout when you have room. That’s basically it for this one. Still more I wanna do but the mobile thing was the one I kept putting off so ywahh. Tysmmmm for Reading
Devloggg #11 (Longer work than others) Wlcm back to Colorful NookOS. Last time it was mostlyy the phone layout and the windows actually letting you pull the edges btw this time I finally sat down with the desk itself, because the right side was just the clock and then a bunch of empty sofa as the reviewers told me to improve that portion So yeah, widgets are the New major updates & quite a pile of them. There is a date card now. It says the day, then a big number, then the month, so today it is Sat, 24, Oct. Under that I put a Timer card that stays on 25:00 with the pomodoro, a Music card that shows whatever song is on (Window Rain, Old Tape, Late Night, Porch Air), a Pin where you can write a line and it stays after refresh, and a Notes card that just tells you how many notes you have. And the one I like the most is the anime polaroid. It is tilted a bit, stuck on with a red thumbtack, and Next flips through the gallery without opening the whole app. Click it if you do want the gallery You can drag them around. If you right click one you get the little bar. alsooo the Dots change the color, The almightty Fix stops it from sliding around (it turns into Free), and Hide takes it off the desk. If you hide one and then miss it, right click an empty spot, hit Widgets, and pick it back up into business Also went back to the resize thing because pulling an edge was mostly just making a bigger yellow or aqua box. RNNn the stuff inside actually grows with the window. Calculator keys get bigger, the clock stays a circle, the welcome window is not a huge empty mustard card anymore (a bug from the very start of webos2 u can sayy) Alsoo I was writing every label in tiny letters which looked kinda unfinished, so the names are normal now. Welcome, Anime, Notes, Calc, Music, Web, Timer. Same on the widgets. That’s basically itt, and what I did. Thoo Still more I wanna do but the widgets were the part that was the main thing heree. Tysmmmm for Reading
Devloggg #12 Wlcm back to Colorful NookOS. Last time it was the desk widgets and the names finally looking like names. This time I kept going on the apps themselves because a few of them were still the first version I threw in at the start, So lets make sure that when I ship the v3 everything is AWESOMEEEE :) So first there is a Camera now. You hit Open, it tries to use the camera, and Snap keeps a little roll under it. If the browser blocks it, it just says so instead of dying quietly (i experienced the dying & didnt knew why it was not working ). Also closing the window turns the camera off, so its safe Then the dock. The apps were one long line of text capsules (as the reviewers last time mentioned) and even on a laptop they just fell off the screen (cuz they were stacked in a cloumn). BTwwww Now they are actual tiles with little icons, Welcome, Anime, Notes, Calc, Music, Web, Timer, Settings ,Camera, sitting in two columns. Alsooo U can drag them around and they stay where you put them after a refresh (using local storage) Anime gallery was the one that looked the worst. It was just white buttons and the picture was tiny. Now the picture is the whole point, a big poster up top, and the picks are small posters with the names sitting on a cream strip. The one you clicked gets a mustard outline. Still the same 11 pics btw, 11 is still the lucky number duhhh And as for Notes. I had not touched that app since the very beginning when it was just a pile of boxes btww Now it is a list on the left and a page on the right. New adds one, the first line becomes the name in the list, Delete takes the one you have open, and the old notes still load. The little Notes card on the desk still counts them That’s basically itt. Still more I wanna do but the apps were starting to feel stuck on the first session so ywahh Tysmmmm for Readingg !!
Devloggg #13 Wlcm back to Colorful NookOS. I hv been LOCKED IN… & grinding now, bcz the Great END is Near……………. Timer is not stuck on 25 anymore. Rnnn, it hs hours minutes and seconds, and you type the time under them. When it hits zero it actually beeps too unlike some of those on the web hehe Settings had a glowup rnn. U can still pick the OG Nook or the flat colors, or drop in your own picture. Theme options is Nook, Night, or Candy. Text can be Small, Normal, or Big. Font is Fredoka, Plain, or Story. Icons can sit in two columns or one long one. And Curvy corners, which rounds the windows and the tiles for those APPLE FANBOYS…… When u right click anywhere free on screen u hv the options for Settings, Widgets, and Web. Widgets is a new app, four little squares for the icon cuz I didnt hv a great idea here. You tap a widget to put it on the desk, and if it is already there it just says so, so no duplicates. Hide on the widget takes it back off :) Alsoooo the app names were still trying to live inside the tile and leaking out when the screen was weird. So what i did was makeing the symbol the in the tile now, bigger and actually in the middle, alsoo i put the names under the apps btw they were not properly visible so I added text borders Alsoo I barely noticed that the window bar was shrinking when you dragged the window small and the control lights were getting squished. That bar stays the same size now. The inside of the app can grow, the bar does not finallyyyyy Widgets got a softer look using Neumorphism (Took me some time to grasp) Alsoo three new ones you add from the Widgets app. To do : where you type a line to add ur goals and alsoo click it to cross it off. Spotify : You open it from the Spotify widget or from a Spotify button inside Music app, and the Spotify site sits in its own window the same way Web holds Webgram !! Quotes : Just Shows Some Quotes That’s basically itt. Still more I wanna work on the Music App next & the Spotify Window is not properly loading yet so Now I gotta find the reason as to why Tysmmmm for Reading guyzz!!
Devloggg #14 (This one will be a shorter one) Wlcm back to Colorful NookOS. Sooo Last time Settings was revamped and Widgets got its own app. This time I kept going on the stuff that was still the first version so that the WEBOS is now Aesthetically good looking The header was still that flat coral strip, that i just put in the very beginning btww rnn it is a cream bar, ink line, mustard edge, three dots, and ColorfulNOOK with the OS chip in the middle. Also I got this bug that Windows and icons were sliding under it, btw i fixed itt. Alsooo There is a tiny hide on the right, and it takes the bar away until you refresh !! Music app looks like a RLYYYYY COOL player now. Alsoo now we hv Tilted covers, big play button, and Open Spotify is its own bar under the controls hehe. The old songs played with no sound so I put four short tunes in the app. Window Rain, Old Tape, Late Night, Porch Air, named after how they sound Timer beep used to blip and die so if u missed it then u wouldnt know that the timer ended. Now it holds until Stop is pressed. Also I redesigned Settings to look AMAZINGG UI-wise. There was also some bugs in window resizing when curved corner were turned on, I fixed those too. Also I removed the coral option & added a anime optio for wallpapers which look crazzyy on the OS. That’s basically itt. The header was the part that still looked like day one so ywahh :D Tysmmmm for Readingg !!
Devloggg #15 (the longest one yet) Wlcm back to Colorful NookOS. Last time I finally decorated that basic header. This stretch is the biggest one so far so ywah it gets the long heading Camera stopped being a plain box cuz I had to revamp it like otherrss. There are lighting filters now, Plain Warm Cool Bright Fade Noir, and a 3s and 10s timer that counts down on the view. Snap is an actual proper looking real like camera shutter. Now we have a NEW app “Gallery”. We got many editing features too like the real gallery like Rotate, a actual crop which u can controllll, Undo, Redo, and Discard are there so you can back out of a bad crop. Save this and Save all can be used to download the imagesss !!! Then a Terminal, ywahh a actual terminal. Dock icon and also on the right click menu. Prompt is C:\ColorfulNOOK and help lists the commands. dir, cd, type for notes, echo, and start actually opens an app. The help text was too dark at first so I made it cream so its properly visible Calculator was still the old grade pad why would i not give it a REVAMPPP. Now it has Basic, Sci, Grade, and Tip. Sci does sin cos tan sqrt log and powers, in degrees. Grade is got over out of and shows the percent. Tip splits a bill. The keys grow when you pull the window bigger bug-free finalyyyyyyyyyy Alsooo the phone. It was drawing the desktop and shrinking it, which looked tiny. Now it knows the screen width. Rnn Icons sit in columns that fit, windows open under the header instead of way below the icons, Also dragging a window doesnt fight the scroll. Long press on the sofa opens the menu but i am not satisfied with the changes so I am gonna work on mobile view, BTWW This WEBOS is specifically aimed towards desktops, so the mobile view wont be that good Tysmmmm for Readingg !!
Ships:
Welcome to the ship of NookOS. The name is NookOS because I’m planning something for WebOS 2 mission. Right now, it’s just a basic web OS that I’ve made. It’s got the clean colors, but a good-looking style right now, at least on the UI part, I think so it’s pretty good for a basic WebOS project :) So this is the first work that I’m shipping right now. What NookOS is, is basically it has three apps. First is the welcome screen. That is not much of an app. It’s just the welcome screen that just welcomes you into the webOS. The second is called as a scratch on the webOS screen, but it’s actually more like a scratch pad where you can basically dump text homework or anything. Yeah, basically you can just dump whatever text you want to, and it will save it. The third app is anime, that is on the screen, and also you can call it anime gallery. It basically lists some images and shows a preview of the images in the same window. Right now it has three images that are anime images. That is, first is doodle of a guy, Second is “Horimiya,” and Third is just some anime girl. So that’s basically it in this project. What I’m planning next, is something that resembles a corner of a room for WebOS 2. So let’s see. First, let’s get approved it for the WebOS 1 mission, and then I will be starting the WebOS 2 mission on the same project.
Finally shipping ColorfulNook OS for WEBOS 2 !! So welcm back to ColorfulNook OS. Ywahh after saying I’d ship it like soo many times, I’m finally shipping it for WEBOS 2 :D For Reviewerss :–> This started as a super basic page with one window and basically nothing working. After that, I’ve changed the whole UI, added the ColorfulNOOK (it rerfers to a small colorful corner of room) background, and made the windows draggable, closable, and reopenable. I also added a bunch of apps: Notes app, Anime Gallery (not a NEW app btw manhy new pics), Calculator, Music, Browser (With my project Webgram as Home), and a 25-minute Timer. I am also using a custom subdomain for the project like all my other oness. And then there’s the AWESOME looking Clock widget hehe, which took me a while to get looking good, but I rlyy Love it !!! I also went through some feedback and fixed a few things that were bugging ppl (the reviewers) like the welcome text overflowing and the close button not looking like a close button lol. Small fixes, but it makes OUR OS way easier to use. That’s basically it, the NEW ColorfulNook OS !! It changed names and took way more updates than I expected, but it’s finally here. Go try it out and let’s see what you think !! Also Follow here & Star on Github if u LIKE itt :)...
|
1793213558.8748558
|
1793299958.8748558
|
|
7470
|
Dungeon-Adventure by @Reid | Stardance
|
Reid
|
1
|
31.66
|
286
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-01T22:10:55Z", "hours": 26.0, "multiplier": 11.61, "payout": 286, "blessing": "neutral", "text": "This is my first ship so I hope you all enjoy it. I made a Dungeon Adventure game that you run in your terminal or shell depending on what device you use. You can go through different dungeon levels that are randomly generated each time you enter a new one. You can also buy lifes or open chests in the shop using gold or keys that you can gather from withen the dungeon, but be careful because there are enemies that can attack you as well so keep an eye on your life and where the enemies are. Some challenges I faced while making this project were figuring out how to make the enemy movement and make it work well, I would say it was probably one of my most difficult and common problems because i had to rewrite how the enemies spawned and functioned over and over until i figured it out. I also had problems with making the small room generations withen the dungeon, because they would constantly keep generating paths that went outside the map causing a crash and i couldnt figure out why for the longest time (like most times with a problem like this it was a kinda simple solution but i still took forever to figure it out). I think my favorite part was making the random map generation because I found it fun to make and I built an algorithm to do it basically from the ground up which was exciting. I did have alot of problems with this too but I figured them out as well. This game is run in a terminal and you do need external libraries such as readchar and colorama to run the program. It comes in 2 files one is the main one you run and the other has a bunch of functions that are called from the first one or even from other functions because alot of the things need to be repeated constantly. Anyways i hope you guys enjoy this project and that it works for you (because im kinda scared that I uploaded something wrong or something to where it wont work for you guys) So have fun and let me know if anything isnt working right by commenting on one of my devlogs or contacting me in Slack (Jason Challand)", "repo": "https://github.com/GorillaReid/Dungeon-Adventure", "demo": "https://github.com/GorillaReid/Dungeon-Adventure/releases/tag/v1.0.0"}]...
|
[{"post_id": 44752, "ts": "202 [{"post_id": 44752, "ts": "2026-08-10T18:44:14Z", "hours": 5.6603, "text": "So I took a break and it’s been a while since I worked on the project but I did finally start working on it again. I’ve decided that since it’s only compatible with some Linux devices I would make a html version that can run in browsers, I did some research and found out I could use pyodide to run Python in a html/javascript environment so I started using that and basically copy pasted most my code into the new file, I have had to modify some of the code like the movement and coloration to work with JavaScript instead. I also decided to make going into the different menus have buttons instead of pushing keys, but I’m having a lot of trouble with getting the buttons to display at the right time and function correctly. Hopefully I can get them working right by the next devlog. (P.S. I’m new to html and JavaScript so I don’t fully know how it works and I kinda feel like buttons should be easier and I’m just missing something, but maybe not and they really are just hard.)"}, {"post_id": 20316, "ts": "2026-07-01T21:40:51Z", "hours": 6.0642, "text": "This is probably my longest work period between devlogs, I did also take like a week break in between them to. Im also hoping i can ship the project after this I worked on making the enemy movement smoother and work better, i decided to not use threading to run multiple loops since i didn’t like how it worked so i just did it semi turn based where the player moves and the enemies will then move, but its so quick the player can just hold down a button to move and it will move them multiple spaces seamlessly. I also worked on polishing the UIs like the Inventory and Shop so that they look better, they now have color and look nice. Something else i worked on was making a Info option too that tells you a little about the game I worked on making the code look cleaner and I added a bunch of comments so that anyone looking at it (and me later when i forget what it does) would know how it works and what does what. The Shop got chests added to it which can be opened with keys that you can also now collect in the dungeons. Thats pretty much it I did, im probably forgetting a few things but oh well. Im planing on making my first ship soon so Im trying to get it working well enough for people to use it"}, {"post_id": 10037, "ts": "2026-06-16T16:27:45Z", "hours": 5.34, "text": "I redid the enemy spawning yet again, but it’s much simpler and easier to modify now. I’ve also been working on enemy movement using the threading library to run multiple loops or functions at a time. I’ve also been working on trying to make the generation for each dungeon level better. One of my friends gave me the idea of having some rooms or something in each level, however there is a few bugs with it, in the photo below you can see it generates a path that just goes straight across the map whenever a room spawns on the initial path, and players can crash the game if they try to leave the map, so I need to fix both of those"}, {"post_id": 5402, "ts": "2026-06-09T04:50:03Z", "hours": 4.0883, "text": "I decided to redo some of the enemy/gold generation which toke me a while since I had to change it from doing a random percent of each row to a random percent of the whole map. I also worked on making some UIs (idk if that’s what these are technically called) for choosing to enter a dungeon, open the shop etc. Ive also started working on switching the way the enemies work."}, {"post_id": 3892, "ts": "2026-06-07T00:00:24Z", "hours": 5.6181, "text": "I recolored some of the map and i added enemy’s and gold. The gold you can gather and get 1-3. The enemy’s take a life from you, if you lose all 5 lives you lose. I fixed a few visual bugs and i split the file into 2 files so i can use import and the call function to be able to do multiple levels. I also scaled the map up more so its easier to see."}, {"post_id": 3223, "ts": "2026-06-06T01:43:38Z", "hours": 2.2025, "text": "I mostly redid the random map generation making the user able to actually reach the end of the dungeon without getting stuck. I also added some color to it so the walls and floor are easy to see. I also added a safety check on the player movement and map generation so the player couldn’t move outside of the map. I started to make it more interactive."}, {"post_id": 2492, "ts": "2026-06-05T00:43:04Z", "hours": 2.2664, "text": "I worked on setting up a random map generator and making it so the player could move around the map. I then added a fix that prevents the players from going through the walls. I then also setup a basic treasure/gold gathering system. After a bit I decided to redo most of the map generation and I’m still working on it. I didn’t realize I was supposed to have photos so this one is of a older version of it from my phone"}]...
|
Title: Dungeon-Adventure by @Reid | Stardance
Dev Title: Dungeon-Adventure by @Reid | Stardance
Devlogs:
I worked on setting up a random map generator and making it so the player could move around the map. I then added a fix that prevents the players from going through the walls. I then also setup a basic treasure/gold gathering system. After a bit I decided to redo most of the map generation and I’m still working on it. I didn’t realize I was supposed to have photos so this one is of a older version of it from my phone
I mostly redid the random map generation making the user able to actually reach the end of the dungeon without getting stuck. I also added some color to it so the walls and floor are easy to see. I also added a safety check on the player movement and map generation so the player couldn’t move outside of the map. I started to make it more interactive.
I recolored some of the map and i added enemy’s and gold. The gold you can gather and get 1-3. The enemy’s take a life from you, if you lose all 5 lives you lose. I fixed a few visual bugs and i split the file into 2 files so i can use import and the call function to be able to do multiple levels. I also scaled the map up more so its easier to see.
I decided to redo some of the enemy/gold generation which toke me a while since I had to change it from doing a random percent of each row to a random percent of the whole map. I also worked on making some UIs (idk if that’s what these are technically called) for choosing to enter a dungeon, open the shop etc. Ive also started working on switching the way the enemies work.
I redid the enemy spawning yet again, but it’s much simpler and easier to modify now. I’ve also been working on enemy movement using the threading library to run multiple loops or functions at a time. I’ve also been working on trying to make the generation for each dungeon level better. One of my friends gave me the idea of having some rooms or something in each level, however there is a few bugs with it, in the photo below you can see it generates a path that just goes straight across the map whenever a room spawns on the initial path, and players can crash the game if they try to leave the map, so I need to fix both of those
This is probably my longest work period between devlogs, I did also take like a week break in between them to. Im also hoping i can ship the project after this I worked on making the enemy movement smoother and work better, i decided to not use threading to run multiple loops since i didn’t like how it worked so i just did it semi turn based where the player moves and the enemies will then move, but its so quick the player can just hold down a button to move and it will move them multiple spaces seamlessly. I also worked on polishing the UIs like the Inventory and Shop so that they look better, they now have color and look nice. Something else i worked on was making a Info option too that tells you a little about the game I worked on making the code look cleaner and I added a bunch of comments so that anyone looking at it (and me later when i forget what it does) would know how it works and what does what. The Shop got chests added to it which can be opened with keys that you can also now collect in the dungeons. Thats pretty much it I did, im probably forgetting a few things but oh well. Im planing on making my first ship soon so Im trying to get it working well enough for people to use it
So I took a break and it’s been a while since I worked on the project but I did finally start working on it again. I’ve decided that since it’s only compatible with some Linux devices I would make a html version that can run in browsers, I did some research and found out I could use pyodide to run Python in a html/javascript environment so I started using that and basically copy pasted most my code into the new file, I have had to modify some of the code like the movement and coloration to work with JavaScript instead. I also decided to make going into the different menus have buttons instead of pushing keys, but I’m having a lot of trouble with getting the buttons to display at the right time and function correctly. Hopefully I can get them working right by the next devlog. (P.S. I’m new to html and JavaScript so I don’t fully know how it works and I kinda feel like buttons should be easier and I’m just missing something, but maybe not and they really are just hard.)
Ships:
This is my first ship so I hope you all enjoy it. I made a Dungeon Adventure game that you run in your terminal or shell depending on what device you use. You can go through different dungeon levels that are randomly generated each time you enter a new one. You can also buy lifes or open chests in the shop using gold or keys that you can gather from withen the dungeon, but be careful because there are enemies that can attack you as well so keep an eye on your life and where the enemies are. Some challenges I faced while making this project were figuring out how to make the enemy movement and make it work well, I would say it was probably one of my most difficult and common problems because i had to rewrite how the enemies spawned and functioned over and over until i figured it out. I also had problems with making the small room generations withen the dungeon, because they would constantly keep generating paths that went outside the map causing a crash and i couldnt figure out why for the longest time (like most times with a problem like this it was a kinda simple solution but i still took forever to figure it out). I think my favorite part was making the random map generation because I found it fun to make and I built an algorithm to do it basically from the ground up which was exciting. I did have alot of problems with this too but I figured them out as well. This game is run in a terminal and you do need external libraries such as readchar and colorama to run the program. It comes in 2 files one is the main one you run and the other has a bunch of functions that are called from the first one or even from other functions because alot of the things need to be repeated constantly. Anyways i hope you guys enjoy this project and that it works for you (because im kinda scared that I uploaded something wrong or something to where it wont work for you guys) So have fun and let me know if anything isnt working right by commenting on one of my devlogs or contacting me in Slack (Jason Challand)...
|
1793101969.754889
|
1793188369.754889
|
|
14351
|
YTS by @omarelasfar_31510 | Stardance
|
omarelasfar_31510
|
0
|
31.63
|
0
|
[]
|
[{"post_id": 79017, "ts": "202 [{"post_id": 79017, "ts": "2026-10-12T11:31:46Z", "hours": 22.7389, "text": "I’m working on the mechanism by which I can insert, connect, and retrieve data from several tables in the fewest number of queries."}, {"post_id": 10250, "ts": "2026-06-16T21:46:30Z", "hours": 8.8892, "text": "I’m making a YouTube scraper that can access videos in any channel and gather data about these videos for further analyzing"}]...
|
Title: YTS by @omarelasfar_31510 | Stardance
Devl Title: YTS by @omarelasfar_31510 | Stardance
Devlogs:
I’m making a YouTube scraper that can access videos in any channel and gather data about these videos for further analyzing
I’m working on the mechanism by which I can insert, connect, and retrieve data from several tables in the fewest number of queries....
|
1792788576.4165156
|
1793393376.4165156
|
|
27826
|
FlowSense by @SubhamtheBuilder | Stardance
|
SubhamtheBuilder
|
0
|
31.6
|
0
|
[]
|
[{"post_id": 20669, "ts": "202 [{"post_id": 20669, "ts": "2026-07-02T10:11:24Z", "hours": 31.6025, "text": "FlowSense Devlog(The first and the last one before the ship, R.I.P to my 7 hrs(context at the end)) A week ago this project was just a random idea in my notes. Now it’s a desktop app that quietly watches how I work, finds repetitive workflows, and helps me stop doing the same thing over and over again. I built FlowSense because I realized I spent half my day opening the same apps in the same order. Chrome ↓ VS Code ↓ Terminal ↓ Chrome Every. Single. Day. Instead of creating automations manually, I wanted something that simply noticed those patterns for me, as our workflows also vary overtime. The stack Electron + React + TypeScript Tailwind CSS + shadcn/ui FastAPI SQLite Framer Motion Recharts Chrome Extension Simple enough….cut to a quick realisation it wasn’t, also yeah I didn’t do it completely by myself it took some help from ai models to cope up with this much but most of it was done by me, again R.I.P to my school exam prep too. What it does now Tracks desktop activity locally Detects repeated workflows Suggests workflow names using AI (optional) Supports Gemini Guides you through workflows with Flow Mode Tracks browser URLs and terminal sessions what apps you are using etc. Shows real productivity analytics My favourite feature Flow Mode. Start a workflow and a small floating overlay follows you across every application. Switch to the next app. Step complete. Move on. It’s such a tiny feature, but somehow it makes repetitive work feel… satisfying. There’s still plenty left to build. Weekly reports Conversation mode A lot of polish But for the first time, it actually feels like a product instead of a collection of experiments, that’s ready to ship. A quick side note it was bad on my part that I thought I would upload a single devlog and then ship, I am lowkey very lazy about devlogs idk why, this was until I saw my whole hackatime time wasnt being logged in on further talking to @Carlson I got to know extra hours over a certain limit aren’t counted or partially counted to prevent any kind of cheating and to promote people giving more frequent devlogs so R.I.P to my extra 7 hours p.s voters pls give me more stars to compensate for those hourss plsssss. Also I will be shipping the project next, hope yall excited just as me, waiting to see all of yours reactions."}]...
|
Title: FlowSense by @SubhamtheBuilder | Stardance
Title: FlowSense by @SubhamtheBuilder | Stardance
Devlogs:
FlowSense Devlog(The first and the last one before the ship, R.I.P to my 7 hrs(context at the end)) A week ago this project was just a random idea in my notes. Now it’s a desktop app that quietly watches how I work, finds repetitive workflows, and helps me stop doing the same thing over and over again. I built FlowSense because I realized I spent half my day opening the same apps in the same order. Chrome ↓ VS Code ↓ Terminal ↓ Chrome Every. Single. Day. Instead of creating automations manually, I wanted something that simply noticed those patterns for me, as our workflows also vary overtime. The stack Electron + React + TypeScript Tailwind CSS + shadcn/ui FastAPI SQLite Framer Motion Recharts Chrome Extension Simple enough….cut to a quick realisation it wasn’t, also yeah I didn’t do it completely by myself it took some help from ai models to cope up with this much but most of it was done by me, again R.I.P to my school exam prep too. What it does now Tracks desktop activity locally Detects repeated workflows Suggests workflow names using AI (optional) Supports Gemini Guides you through workflows with Flow Mode Tracks browser URLs and terminal sessions what apps you are using etc. Shows real productivity analytics My favourite feature Flow Mode. Start a workflow and a small floating overlay follows you across every application. Switch to the next app. Step complete. Move on. It’s such a tiny feature, but somehow it makes repetitive work feel… satisfying. There’s still plenty left to build. Weekly reports Conversation mode A lot of polish But for the first time, it actually feels like a product instead of a collection of experiments, that’s ready to ship. A quick side note it was bad on my part that I thought I would upload a single devlog and then ship, I am lowkey very lazy about devlogs idk why, this was until I saw my whole hackatime time wasnt being logged in on further talking to @Carlson I got to know extra hours over a certain limit aren’t counted or partially counted to prevent any kind of cheating and to promote people giving more frequent devlogs so R.I.P to my extra 7 hours p.s voters pls give me more stars to compensate for those hourss plsssss. Also I will be shipping the project next, hope yall excited just as me, waiting to see all of yours reactions....
|
1793188041.4759707
|
1793792841.4759707
|
|
1036
|
Beyond the Quarks by @__grdev | Stardance
|
__grdev
|
1
|
31.4
|
410
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-14T13:56:37Z", "hours": 31.0, "multiplier": 13.08, "payout": 410, "blessing": "neutral", "text": "I built this sci-fi-themed video game from scratch. The story is about an astronaut who makes the first interdimensional journey thanks to Q.U.A.R.K., a device created by NASA to generate wormholes. However, the device malfunctions, and the player finds himself lost in the multiverse. The player must explore different universes to find parts to repair the Q.U.A.R.K. and return home. The game is still in its early stages of development. The demo only includes the first playable scene, the lab, but much of the foundation for the rest of the gameplay is already in place. The pixel art assets were almost entirely created from scratch by me. Only a few of the images in the first sequence were generated by AI and then edited and adjusted by hand. While the game may be very short at the moment, I hope the attention to detail stands out, such as the dialogue, sprites, and the logic of certain elements, such as the camera that changes its behavior (first fixed on the screen and then dynamically following the player).", "repo": "https://github.com/gianluca-rainis/BeyondTheQuarks", "demo": "https://var-grdev.itch.io/beyond-the-quarks"}]...
|
[{"post_id": 53050, "ts": "202 [{"post_id": 53050, "ts": "2026-08-23T13:21:48Z", "hours": 0.3958, "text": "Fixed the deselect on background click in all the scenes."}, {"post_id": 46911, "ts": "2026-08-14T13:33:31Z", "hours": 0.3492, "text": "Updated the README and published on itch.io!"}, {"post_id": 46881, "ts": "2026-08-14T12:54:10Z", "hours": 0.8186, "text": "I’ve added a “Coming Soon” scene after the finish of the first scene. I’ve also added an automatic saving system for when it change scene."}, {"post_id": 45135, "ts": "2026-08-11T13:06:26Z", "hours": 1.1853, "text": "Finally finished a working saving system! It saves the position of the player, the inventory, the scene and the current room!"}, {"post_id": 44569, "ts": "2026-08-10T12:38:18Z", "hours": 0.5222, "text": "Made the graphics for the delete items."}, {"post_id": 44017, "ts": "2026-08-09T14:47:42Z", "hours": 1.5428, "text": "Finished the logic and the graphics of the inventory. Added some items in the laboratory that the player can pick up. Created some special dialogues with some NPCs that depends on the items that the player has in the inventory."}, {"post_id": 43303, "ts": "2026-08-08T14:20:32Z", "hours": 1.7525, "text": "Finished a first full-working version of the inventory. (the column in the video is just a test item)"}, {"post_id": 42646, "ts": "2026-08-07T14:12:17Z", "hours": 0.4469, "text": "Finished a first simple version of the pause menu, with inventory, QUARK status, Save and Quit buttons."}, {"post_id": 41301, "ts": "2026-08-05T13:19:18Z", "hours": 1.6572, "text": "Started working on a simple pause menu. Started integrating a better saving system, that should allow the player to save in almost any moment and resume from it."}, {"post_id": 40715, "ts": "2026-08-04T12:58:49Z", "hours": 1.35, "text": "Added images and text for the first dimensional leap sequence."}, {"post_id": 39955, "ts": "2026-08-03T09:10:36Z", "hours": 1.0233, "text": "Finally finished a first version of the tutorial scene. I’ve added the sound effects and prepared everything to start working on the first multiverse."}, {"post_id": 39420, "ts": "2026-08-02T11:29:31Z", "hours": 1.9908, "text": "Added an animation for the moment when you step on the stage, with a speech from the head of the Q.U.A.R.K. project. Added an animation when you take the Q.U.A.R.K. and the animated portal that you can open with it. I drew all the sprites."}, {"post_id": 39351, "ts": "2026-08-02T08:43:14Z", "hours": 0.8733, "text": "Added some really important people in the stage room. Each person have a dialogue, and the NASA Administrator has 4 dialogues."}, {"post_id": 38800, "ts": "2026-08-01T11:17:02Z", "hours": 0.6367, "text": "Added the QUARK, with the pickup animation."}, {"post_id": 38109, "ts": "2026-07-31T10:12:26Z", "hours": 0.9011, "text": "Drawn 2 more sprites for the scientists. Added some electronic components in the engineers room. Added unique dialogues with the NPCs."}, {"post_id": 37534, "ts": "2026-07-30T10:49:14Z", "hours": 1.8297, "text": "Made the dialogs with the NPC!"}, {"post_id": 36978, "ts": "2026-07-29T12:33:12Z", "hours": 0.9403, "text": "Added some scientists in the first room!"}, {"post_id": 36331, "ts": "2026-07-28T11:46:35Z", "hours": 1.3778, "text": "Started working on the sprites for the tutorial rooms!"}, {"post_id": 32956, "ts": "2026-07-22T13:18:32Z", "hours": 1.3172, "text": "Created the backgrounds for the tutorial rooms"}, {"post_id": 24042, "ts": "2026-07-07T10:27:48Z", "hours": 2.4883, "text": "Started working on the rooms. Created three empty rooms (that will be the three rooms of the tutorial), two with static camera, and one (that’s bigger) with the free camera. Made the room transition animation (It’s been quite difficult, I had to fix a lot of bugs!)."}, {"post_id": 22771, "ts": "2026-07-05T11:05:24Z", "hours": 1.2342, "text": "Updated the Unity version to the modern 6000.5.1f1 and fixed all the related bugs. Added a typing sound effect for the story scene (unluckily you can’t hear it in the video)."}, {"post_id": 2644, "ts": "2026-06-05T09:27:33Z", "hours": 1.1653, "text": "Drawn the player sprites! (1st simple version)"}, {"post_id": 1349, "ts": "2026-06-03T09:35:28Z", "hours": 0.8936, "text": "Made the story’s slides for the new games."}, {"post_id": 1323, "ts": "2026-06-03T08:08:39Z", "hours": 0.7725, "text": "Finished the title screen!"}, {"post_id": 802, "ts": "2026-06-02T13:58:42Z", "hours": 0.8736, "text": "Writed the Save logic."}, {"post_id": 730, "ts": "2026-06-02T10:33:57Z", "hours": 0.9222, "text": "Added the buttons in the title screen"}, {"post_id": 689, "ts": "2026-06-02T07:57:05Z", "hours": 2.4847, "text": "Made the README file. Started working on the title scene."}]...
|
Title: Beyond the Quarks by @__grdev | Stardance
Title: Beyond the Quarks by @__grdev | Stardance
Devlogs:
Made the README file. Started working on the title scene.
Added the buttons in the title screen
Writed the Save logic.
Finished the title screen!
Made the story’s slides for the new games.
Drawn the player sprites! (1st simple version)
Updated the Unity version to the modern 6000.5.1f1 and fixed all the related bugs. Added a typing sound effect for the story scene (unluckily you can’t hear it in the video).
Started working on the rooms. Created three empty rooms (that will be the three rooms of the tutorial), two with static camera, and one (that’s bigger) with the free camera. Made the room transition animation (It’s been quite difficult, I had to fix a lot of bugs!).
Created the backgrounds for the tutorial rooms
Started working on the sprites for the tutorial rooms!
Added some scientists in the first room!
Made the dialogs with the NPC!
Drawn 2 more sprites for the scientists. Added some electronic components in the engineers room. Added unique dialogues with the NPCs.
Added the QUARK, with the pickup animation.
Added some really important people in the stage room. Each person have a dialogue, and the NASA Administrator has 4 dialogues.
Added an animation for the moment when you step on the stage, with a speech from the head of the Q.U.A.R.K. project. Added an animation when you take the Q.U.A.R.K. and the animated portal that you can open with it. I drew all the sprites.
Finally finished a first version of the tutorial scene. I’ve added the sound effects and prepared everything to start working on the first multiverse.
Added images and text for the first dimensional leap sequence.
Started working on a simple pause menu. Started integrating a better saving system, that should allow the player to save in almost any moment and resume from it.
Finished a first simple version of the pause menu, with inventory, QUARK status, Save and Quit buttons.
Finished a first full-working version of the inventory. (the column in the video is just a test item)
Finished the logic and the graphics of the inventory. Added some items in the laboratory that the player can pick up. Created some special dialogues with some NPCs that depends on the items that the player has in the inventory.
Made the graphics for the delete items.
Finally finished a working saving system! It saves the position of the player, the inventory, the scene and the current room!
I’ve added a “Coming Soon” scene after the finish of the first scene. I’ve also added an automatic saving system for when it change scene.
Updated the README and published on itch.io!
Fixed the deselect on background click in all the scenes.
Ships:
I built this sci-fi-themed video game from scratch. The story is about an astronaut who makes the first interdimensional journey thanks to Q.U.A.R.K., a device created by NASA to generate wormholes. However, the device malfunctions, and the player finds himself lost in the multiverse. The player must explore different universes to find parts to repair the Q.U.A.R.K. and return home. The game is still in its early stages of development. The demo only includes the first playable scene, the lab, but much of the foundation for the rest of the gameplay is already in place. The pixel art assets were almost entirely created from scratch by me. Only a few of the images in the first sequence were generated by AI and then edited and adjusted by hand. While the game may be very short at the moment, I hope the attention to detail stands out, such as the dialogue, sprites, and the logic of certain elements, such as the camera that changes its behavior (first fixed on the screen and then dynamically following the player)....
|
1793116353.9325948
|
1793202753.9325948
|
|
38552
|
FRC 2026 Robot by @Ash-ioL | Stardance
|
Ash-ioL
|
0
|
31.39
|
0
|
[]
|
[{"post_id": 46039, "ts": "202 [{"post_id": 46039, "ts": "2026-08-12T23:27:26Z", "hours": 5.4164, "text": "Ready for ACTION! The robot is now at a functional state with lots of new automation and is ready to compete in an offseason competition. It certainly took a lot of time, especially with the abundant testing, and fixing some confusing bugs. Completed: Added manual aim adjustment Created and saved elastic dashboard Challenges: There was a bug caused by autonomous path filtering that I helped my team fix. It was hard to find what was causing it and even now I still don’t know why that line was causing a problem. Fixed a bug where the automatic shooting was actually not shooting when everything is ready, but was shooting instantly. Moving forward: I’m gonna keep working on this and improving it for our next offseason competition instead of shipping it already. So the plans are: Automatically detect when we’re intaking, shooting, or a certain spot is facing resistance with stator current thresholds. Improve moving while shooting accuracy. Try some object detection, 3d simulation, and vision sim. Signing off, Ash-ioL"}, {"post_id": 43096, "ts": "2026-08-08T05:39:50Z", "hours": 10.7139, "text": "Entering the last week before offseason comp Trying to make the robot as sophisticated and automated as possible on the controls side here before the offseason event. I’ve haven’t really been working on any other coding project other than this. Changes/Improvements: Replaced the robot’s default position to x-lock instead of idle. X-lock is a wheel position for swerves that makes the robot hard to move. Changed the polar magnitude limiter to a acceleration limiter which lets us tune things more directly and easily. Developed a list of things the robot should do (like actions to bind to the controller) and implemented them in the code. Many are automated and simple to use, reducing operator error. Fixed some improper commands that were causing issues by not being interrupted properly. Predictive targetting: picks target based on where teh robot WILL be rather than where it is. Experimented with a jerk limit, hoping it’ll cause an s curve but it ended up causing some weird oscillations since it was reactive and not predictive. Logged the state for each subsystem. To do: Improving our autonomous routines. Add a manual adjustment for targets. Signing off, Ash-ioL"}, {"post_id": 40559, "ts": "2026-08-04T06:09:21Z", "hours": 5.7608, "text": "Smoother Tracking, Quicker Maneuvers, Automated Sequences It’s been a week or two since my last devlog. I’ve been working on this and helping getting it ready with my team for our next offseason competition, which is probably when I’ll do my first ship for my contributions to this project. Features: Improved aiming while shooting by using the interpolated mean to average the robot’s velocity to make it less impacted by randomness. Smart controller detectoin to see how many controllers your using and binds the functions appropriately. More efficient bump crossing with the robot now snapping to the nearest 45 degrees rather than just a fixed one. Improved compatibility in my customjoystick for simulation. Reduced the logging overhead by removing unecessary stuff that’s only needed in simulation. Made it classify aiming as not idle so that it aims when standing still. I also spent time adding logging for these features and making sure the code is neat and readable as possible, while double checking and testing in simulation a lot. I also fixed a couple small bugs here and there. Tha challenges were mainly not that like confusing as it is sometimes. The big thing was like testing and navigating the code which took up the most time. But really this is all worth it because its so nice to see your code just come to life on a real robot. Signing off, Ash-ioL"}, {"post_id": 33899, "ts": "2026-07-24T05:41:21Z", "hours": 5.2836, "text": "Made some progress! Completed: Trajectory generation to bumps using compact code Removed trig from polar slew rate and replaced with vector math (so much cleaner) Fixed some axis inversion with the contorller input causing weird behavior. Broke bump paths unintentionally but fixed it again Fixed some landmark positions and zone coordinates that were incorrect Increased kp in heading requests to make it snappier I am pretty surprised at the amount of things that I was about to work on and get done in this 5 hour period of time. I did a lot of testing, involving digging through past commits for direction issues and narrowing down issues with the bump stuff, and I also made sure not to ignore the small details like cleaning up old code and keeping things readable and compact. Next: Honestly I might take a small break from this robot. I did have a cool idea of generating PathPlanner trajectories with continuous math functions. But I might do that in another repository and move it over to this after. Signing off, Ash-ioL"}, {"post_id": 33352, "ts": "2026-07-23T06:04:27Z", "hours": 4.2189, "text": "Progress on the time… but no progress on the code First of all I want to be clear I spent every minute of these 4 hours working on this. I was learning in depth how commands work, and shortcuts to use them, etc. as I was coding this on the side. Anyways now that we have that clear, back to the progress report. So this entire time I was working on making a teleop auto generation functionality to go from bump to bump with the click of a button. Phase 0: Programmers start at 0 This only took like 5 minutes. So I copied over a utility I made in another robot that remaps the Xbox controller readings from windows axis/buttons to macos axis/buttons. So yay! I can use my controller now. Phase 1: Brute Force I wrote a like a 120-200 line code (forgot), and it involved copy pasting and changing stuff each time, resulting in a unique seperate command for each zone the robot can be in. Why this was changed: It hurt my eyes. Phase 2: Compactifying: So I managed to simplify those into one command that modifies the pose x y and rotation values directly and uses mirroring and stuff to really keep it as low lines and simple as possible. I was proud of this, took a lot of thinking and fixing minor tiny errors here and there. Phase 3: Kicking out the teammate with 4000 ping By teammate, I mean advantagescope. It turns out when I was a youngling learning to do frc code (still am ig), i accidentally installed the x64 version into my macbook instead of the arm64, so after installing the advantagescope that my cpu works better with, it fixed the 4000ping and 10fps and I got a beautiful thing actually moves more than 4 steps when I push the joystick. Before this it took me a lot of time ot figure out that i needed to reinstall advantage scope. I tried to mess aorund with the command scheduler, have a debate with stubborn AI about how to fix this, and lets just say it took a lot of time. Phase 4 - What… the… hail who sped up time while i was coding So now as I am writing this I am looking at the clock expecting it to be 10am, and its currently 11:30am which is normal for some people but I do practice at 6:30am so I’m probably not gonna feel the best tomorrow but whatever. Oh and how did my code work? THE COMMAND JUST MAKES THE ROBOT JUST STUPIDLY DRIVE STRAIGHT TO THE MIDDLE OF FUDGING NOWHERE but yea thats a problem for tomorrow. And sorry the repository is private for now. I’ll try to get it public when my team meeting happens. Signing off, Ash-ioL"}]...
|
Title: FRC 2026 Robot by @Ash-ioL | Stardance
Dev Title: FRC 2026 Robot by @Ash-ioL | Stardance
Devlogs:
Progress on the time… but no progress on the code First of all I want to be clear I spent every minute of these 4 hours working on this. I was learning in depth how commands work, and shortcuts to use them, etc. as I was coding this on the side. Anyways now that we have that clear, back to the progress report. So this entire time I was working on making a teleop auto generation functionality to go from bump to bump with the click of a button. Phase 0: Programmers start at 0 This only took like 5 minutes. So I copied over a utility I made in another robot that remaps the Xbox controller readings from windows axis/buttons to macos axis/buttons. So yay! I can use my controller now. Phase 1: Brute Force I wrote a like a 120-200 line code (forgot), and it involved copy pasting and changing stuff each time, resulting in a unique seperate command for each zone the robot can be in. Why this was changed: It hurt my eyes. Phase 2: Compactifying: So I managed to simplify those into one command that modifies the pose x y and rotation values directly and uses mirroring and stuff to really keep it as low lines and simple as possible. I was proud of this, took a lot of thinking and fixing minor tiny errors here and there. Phase 3: Kicking out the teammate with 4000 ping By teammate, I mean advantagescope. It turns out when I was a youngling learning to do frc code (still am ig), i accidentally installed the x64 version into my macbook instead of the arm64, so after installing the advantagescope that my cpu works better with, it fixed the 4000ping and 10fps and I got a beautiful thing actually moves more than 4 steps when I push the joystick. Before this it took me a lot of time ot figure out that i needed to reinstall advantage scope. I tried to mess aorund with the command scheduler, have a debate with stubborn AI about how to fix this, and lets just say it took a lot of time. Phase 4 - What… the… hail who sped up time while i was coding So now as I am writing this I am looking at the clock expecting it to be 10am, and its currently 11:30am which is normal for some people but I do practice at 6:30am so I’m probably not gonna feel the best tomorrow but whatever. Oh and how did my code work? THE COMMAND JUST MAKES THE ROBOT JUST STUPIDLY DRIVE STRAIGHT TO THE MIDDLE OF FUDGING NOWHERE but yea thats a problem for tomorrow. And sorry the repository is private for now. I’ll try to get it public when my team meeting happens. Signing off, Ash-ioL
Made some progress! Completed: Trajectory generation to bumps using compact code Removed trig from polar slew rate and replaced with vector math (so much cleaner) Fixed some axis inversion with the contorller input causing weird behavior. Broke bump paths unintentionally but fixed it again Fixed some landmark positions and zone coordinates that were incorrect Increased kp in heading requests to make it snappier I am pretty surprised at the amount of things that I was about to work on and get done in this 5 hour period of time. I did a lot of testing, involving digging through past commits for direction issues and narrowing down issues with the bump stuff, and I also made sure not to ignore the small details like cleaning up old code and keeping things readable and compact. Next: Honestly I might take a small break from this robot. I did have a cool idea of generating PathPlanner trajectories with continuous math functions. But I might do that in another repository and move it over to this after. Signing off, Ash-ioL
Smoother Tracking, Quicker Maneuvers, Automated Sequences It’s been a week or two since my last devlog. I’ve been working on this and helping getting it ready with my team for our next offseason competition, which is probably when I’ll do my first ship for my contributions to this project. Features: Improved aiming while shooting by using the interpolated mean to average the robot’s velocity to make it less impacted by randomness. Smart controller detectoin to see how many controllers your using and binds the functions appropriately. More efficient bump crossing with the robot now snapping to the nearest 45 degrees rather than just a fixed one. Improved compatibility in my customjoystick for simulation. Reduced the logging overhead by removing unecessary stuff that’s only needed in simulation. Made it classify aiming as not idle so that it aims when standing still. I also spent time adding logging for these features and making sure the code is neat and readable as possible, while double checking and testing in simulation a lot. I also fixed a couple small bugs here and there. Tha challenges were mainly not that like confusing as it is sometimes. The big thing was like testing and navigating the code which took up the most time. But really this is all worth it because its so nice to see your code just come to life on a real robot. Signing off, Ash-ioL
Entering the last week before offseason comp Trying to make the robot as sophisticated and automated as possible on the controls side here before the offseason event. I’ve haven’t really been working on any other coding project other than this. Changes/Improvements: Replaced the robot’s default position to x-lock instead of idle. X-lock is a wheel position for swerves that makes the robot hard to move. Changed the polar magnitude limiter to a acceleration limiter which lets us tune things more directly and easily. Developed a list of things the robot should do (like actions to bind to the controller) and implemented them in the code. Many are automated and simple to use, reducing operator error. Fixed some improper commands that were causing issues by not being interrupted properly. Predictive targetting: picks target based on where teh robot WILL be rather than where it is. Experimented with a jerk limit, hoping it’ll cause an s curve but it ended up causing some weird oscillations since it was reactive and not predictive. Logged the state for each subsystem. To do: Improving our autonomous routines. Add a manual adjustment for targets. Signing off, Ash-ioL
Ready for ACTION! The robot is now at a functional state with lots of new automation and is ready to compete in an offseason competition. It certainly took a lot of time, especially with the abundant testing, and fixing some confusing bugs. Completed: Added manual aim adjustment Created and saved elastic dashboard Challenges: There was a bug caused by autonomous path filtering that I helped my team fix. It was hard to find what was causing it and even now I still don’t know why that line was causing a problem. Fixed a bug where the automatic shooting was actually not shooting when everything is ready, but was shooting instantly. Moving forward: I’m gonna keep working on this and improving it for our next offseason competition instead of shipping it already. So the plans are: Automatically detect when we’re intaking, shooting, or a certain spot is facing resistance with stator current thresholds. Improve moving while shooting accuracy. Try some object detection, 3d simulation, and vision sim. Signing off, Ash-ioL...
|
1792795741.1736999
|
1793400541.1736999
|
|
58746
|
Creating a program for floriography ciphered messa Creating a program for floriography ciphered messages by @Mj1536 | Stardance...
|
Mj1536
|
1
|
31.28
|
156
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-29T23:04:42Z", "hours": 31.0, "multiplier": 5.12, "payout": 156, "blessing": "neutral", "text": "A project on the C language to decipher and create floriography messages This is a project written with the C language to decipher and create florigraphy messages. Nowadays, living among teenagers, it has become relatively common to notice people struggling to express themselves, especially about their feelings. The project came as a way to introduce people to floriography and provide another way, more indirect, to express themselves and their feelings with this beautiful cipher.", "repo": "https://github.com/Mj1536/A-project-to-decipher-and-create-floriography-messages", "demo": "https://floriografia.dino.icu/"}]...
|
[{"post_id": 75415, "ts": "202 [{"post_id": 75415, "ts": "2026-09-30T01:06:29Z", "hours": 0.2772, "text": "It is also available on OnlineGDB https://onlinegdb.com/v-gqiS9SV"}, {"post_id": 75368, "ts": "2026-09-29T21:10:28Z", "hours": 5.1086, "text": "Finished. Finished making the second part, allowing to get flowers for a specific meaning, debugging it, and correcting grammar."}, {"post_id": 74778, "ts": "2026-09-28T06:59:49Z", "hours": 2.1333, "text": "Doing some grammar correction and organization"}, {"post_id": 74748, "ts": "2026-09-28T04:12:38Z", "hours": 0.7333, "text": "Finishing debbuging"}, {"post_id": 74735, "ts": "2026-09-28T02:55:15Z", "hours": 1.1, "text": "Finishing adding the meanings"}, {"post_id": 74711, "ts": "2026-09-28T01:25:44Z", "hours": 4.8667, "text": "Adding the meanings! Unfortunately, I had to remove the combinations due to copyright laws"}, {"post_id": 72447, "ts": "2026-09-23T00:01:05Z", "hours": 5.3667, "text": "Finishing making the flower combinations and fixing some smaller problems"}, {"post_id": 72049, "ts": "2026-09-22T02:15:48Z", "hours": 1.6333, "text": "Continuing the flower combination system"}, {"post_id": 71038, "ts": "2026-09-20T07:29:19Z", "hours": 3.8, "text": "Two new flowers, and preparation for combination of flowers creating new meanings"}, {"post_id": 70942, "ts": "2026-09-20T02:38:55Z", "hours": 2.2333, "text": "Changed the if for switch for better performance and organization"}, {"post_id": 70902, "ts": "2026-09-20T00:03:30Z", "hours": 1.1, "text": "Organizing and making some changes on the code"}, {"post_id": 70882, "ts": "2026-09-19T22:52:58Z", "hours": 0.7, "text": "Finished adding flowers for now"}, {"post_id": 70869, "ts": "2026-09-19T22:03:36Z", "hours": 1.0019, "text": "Just adding some flowers"}, {"post_id": 68860, "ts": "2026-09-15T21:53:12Z", "hours": 0.7381, "text": "A first draft"}]...
|
Title: Creating a program for floriography ciphere Title: Creating a program for floriography ciphered messages by @Mj1536 | Stardance
Devlogs:
A first draft
Just adding some flowers
Finished adding flowers for now
Organizing and making some changes on the code
Changed the if for switch for better performance and organization
Two new flowers, and preparation for combination of flowers creating new meanings
Continuing the flower combination system
Finishing making the flower combinations and fixing some smaller problems
Adding the meanings! Unfortunately, I had to remove the combinations due to copyright laws
Finishing adding the meanings
Finishing debbuging
Doing some grammar correction and organization
Finished. Finished making the second part, allowing to get flowers for a specific meaning, debugging it, and correcting grammar.
It is also available on OnlineGDB https://onlinegdb.com/v-gqiS9SV
Ships:
A project on the C language to decipher and create floriography messages This is a project written with the C language to decipher and create florigraphy messages. Nowadays, living among teenagers, it has become relatively common to notice people struggling to express themselves, especially about their feelings. The project came as a way to introduce people to floriography and provide another way, more indirect, to express themselves and their feelings with this beautiful cipher....
|
1793152474.0659056
|
1793238874.0659056
|
|
19479
|
Stardeck by @YodaheWondimu | Stardance
|
YodaheWondimu
|
0
|
31.27
|
0
|
[]
|
[{"post_id": 49980, "ts": "202 [{"post_id": 49980, "ts": "2026-08-19T00:17:58Z", "hours": 11.2794, "text": "Devlog #4: Iterating CAD for component assembly and adding necessary detail With the hardware flow open, I received feedback on my hardware project. A reviewer returned my funding request and advised me to work on adding more detail to my CAD model, since it’s important for actually putting the hardware together and makes CAD your best wingman. Detailed Assembly The detailed assembly would be close to the concept from Devlog #2, but: Instead of blocks for every hardware component, I’ll use open-source .step files as 1:1 reference models. If the model accurately represents the real part and tolerances are accounted for, Onshape fits should represent reality. (Attribution is given in docs/ATTRIBUTIONS.md in my GitHub repository.) Fasteners mattered now, so there was no more pairing of generic screws with generic nuts and calling it a day. The clearance holes from before weren’t as reliable as threaded bosses for mounting purposes, so I had to make replacements where necessary. Hardware Modeling and Fit Raspberry Pi 4B Importing the model for the Raspberry Pi 4B revealed an incorrect assumption. I assumed its 4 mounting holes sat near the corners of the board, but they were actually positioned differently. I adjusted the gap between the mounting rails to allow the Pi to rest and moved the mounting holes to where the Pi could line up on top of them, resulting in a mounting-aware pair of rails that I fastened shortly after. Elecrow RC070 7-inch Touchscreen Display I took the given file from its product page and merged its individual parts into one composite part. After composing, I added mounting holes matching those of the real component. The screen’s width fit perfectly into the top enclosure’s cutout (same width dimension), and with that, I added 0.5mm clearance to all sides of the top enclosure half’s screen cutout in case tolerance reality decides to strike my hardware. Anker Portable Charger/Power Bank This was where it got tricky. There was no available CAD model for the battery pack online, so I had to reverse engineer it myself. Our more realistic battery model had a length of ~153mm, while our placeholder had a length of ~115mm. Since our battery tray was initially modeled to fit snugly around the placeholder model (back when we just needed everything to fit together), our actual battery wasn’t going to fit. Our much more realistic model won over, and I reworked the battery tray with a looser but not as risky fit, centered closer to the side opposite the mounting rails of the inner enclosure’s bottom half. MicroCenter Flash Drive This part required some more of the same principle - reverse engineering - and having the flash drive with me made it easier to create a reference model. Dimensions that are reasonably close to the real thing in Onshape allow us to achieve the same purpose: testing the spacing and enclosure considerations of Stardeck. Challenges Reverse engineering the battery and flash drive was where I learned the most during this revision. I implemented the dimensions that were most relevant to each part’s size and connectivity (since I didn’t need 10/10 looks here) to concoct replicas that came pretty close to the real thing. I also had to design holes that would work with a custom Featurescript for threading. I tried to increase the thickness of certain sides with mounting holes for ThreadCreator’s sake, but what ended up working was switching to a similar Featurescript called BoazThread. What’s complete: Refined key details of the component assembly Related my enclosure hardware to 1:1 hardware models Reverse engineered parts without publicly available CAD models Next up: Refine design further (if required for funding) Receive physical parts Assemble Stardeck IRL Get Stardeck to boot"}, {"post_id": 29786, "ts": "2026-07-16T21:57:29Z", "hours": 8.1269, "text": "Devlog #3 - Printing the Physical Enclosure Good news! This week, I managed to get my 3D printer up and running. Weeks of CAD work finally culminated in a pair of printed enclosure halves. Since I was going for a clamshell design for the first print, I printed both the top and bottom halves to see how they would go together. I knew I was technically doing this to test out tolerances and whatever, but I was secretly excited to be building something outside of Onshape for a change. Settings I mostly used my printer’s default profile, adding tree supports for the floating cantilever sections in the internal mounting rails. They printed cleanly and snapped away easily after fabrication. (Detailed slicer settings are documented separately in docs/printer_settings.md .) The only supports needed were for those mounting rails in the bottom half and the alignment lip on the top half. The results, as you’re about to see, went smoothly. Print Results Fresh off the 3D printer, I had both enclosure halves. The clamshell enclosure worked exactly how I’d hoped, and it seems like it will make disassembly easy enough to fill the internals with electronics (once I have them) and assembly easy enough to not irritate users. The alignment lips kept both halves aligned, and the lip mounting holes worked as a visual aid that told you whether or not each enclosure half was level or not - a perfect circle meant aligned, sliding semicircles meant you had to nudge it a bit. The other visible features - the display mounting area, port cutout, and battery tray - also turned out great. I was surprised to see the top half fit like a glove onto the bottom half first-try. After all, I’ve heard scary stories around an imaginary campfire where one tolerance requires reprinting everything (spooky). Luckily, no such thing happened here. And the mounting holes? They all came out exactly as modeled. The M3 holes on the alignment lips and the M2.5 holes on the display mounts and Pi rails matched the dimensions I designed. Considering how much I’d heard about tolerance problems, seeing everything line up on the first print felt like a small victory. When I Thought I Messed Up So…something happened. I noticed fringing filament that was sticking out of certain surfaces. I thought this would compromise the design’s integrity, and so I searched up the problem. After looking online, I found that this event was known as stringing, where melted filament can ooze from the nozzle during travel and solidify on top of whatever it lands on. I was relieved to figure out that this wasn’t a structural problem, but rather an aesthetic one, which I solved by clipping off any excess filament similar to the tree supports. Summary Printing the enclosure completely changed how the project felt. Up until this point, Stardeck had only existed inside Onshape. Holding both halves in my hands made it feel less like an idea and more like something I was actually going to finish. I don’t have my electronics just yet, but I believe that Hack Club’s funding process will give me the parts that I need to turn my idea into a reality. Speaking of the funding process, I’ve also spent a great deal of time in consecutive work sessions just documenting. I’ve been preparing my JOURNAL.md to showcase day-to-day summaries of progress, screenshotting my Onshape designs, and sharing my fabrication workflow. Steps like these are what allow a project to be considered for hardware grants later, which I need to receive the electronics that’ll make Stardeck a real cyberdeck. The enclosure may only be plastic for now, but it’s the first physical piece of Stardeck. Next comes the stage I’ve been designing around from the beginning: bringing it to life with actual hardware. Next Up: Finish up documentation/design tweaks Submit design for hardware funding Assemble components into the enclosure Craft a booting prototype?"}, {"post_id": 20417, "ts": "2026-07-02T00:37:00Z", "hours": 10.4044, "text": "Devlog #2 - Component Assembly and Design Tuning This week, I was tuning my Stardeck designs to reach feasibility before submitting my design to Stardance for review. I started to test my initial design decisions using Onshape to model the spacing that each part would need, and I used that to finish up a component assembly that reflected how my parts would fit together in the real world. CAD Assembly Space was a critical factor in my cyberdeck because it was what everything inside of my enclosure lived on. Furthermore, my enclosure design evolved often to account for unanticipated constraints. A few of my enclosure features for Stardeck surprised me as I never even knew that I needed them at first. Clamshell Design: Remember how in the first devlog, I was considering using a rectangular prism with a carved-out back to house all the internal components? I found out very quickly that this would still make for a hard assembly once more than two parts came in. A clamshell design - top half, bottom half - would allow me to make the most of the space given because it would allow me to actually reach many parts of the internals. Alignment Lips: This took me a long time to conceptualize after hearing about these for the first time, but it became easy once I thought of a shoebox. The top of any shoebox fits on the bottom half and rests there - not because it’s screwed in place, but because the top half sort of wraps around the bottom half. These made the clamshell more robust as the “shoebox method” promised a safer screwdriver assembly as well. Mounting Rails: Placing the Raspberry Pi, which would be the basis of Stardeck’s computing subsystem, in the exact middle of the enclosure meant that other components - battery, screen, flash drive, etc - could reach it easily. However, it can’t just levitate, so it uses mounting rails to keep it up. The rails also come with holes for the Pi to be mounted onto for added security. Port Cutout: I felt so relieved after realizing that I needed this before shipping off all my CAD files to display on GitHub. The reason why was because it’s the hole in the enclosure that allows external cables to access the Pi’s USB ports. This makes essential functions such as swapping flash drives and connecting keyboards much easier. Overall, it’s a small design feature that makes assembly and maintenance much easier. System Architecture From the last devlog, we already knew how each component would connect to one another in practice. However, I found that for this iteration, the system could be modeled effectively at the subsystem level without a full PCB design or detailed electrical schematic. To follow, I created a System Architecture diagram to demonstrate how the parts of Stardeck interact with each other. After solving the electrical problem, I managed - with several days of me modeling components to depict and assemble - to solve the mechanical problem instead. Both were closely related to each other, which made for a lot of work when planning port maps, looking at diagrams of the port locations on a Raspberry Pi, finding components for the BOM that I want for my build, and so on. Summary I learned a lot about hardware selection, using Onshape to work around physical constraints, and building prototypes with future me in mind. I’m confident this design is ready to be submitted at its current state to Stardance. It’s simple and has just enough functionality without going overboard for a minimal viable product. With funding help from them, I’ll have the parts necessary to go from designing a prototype to fabricating a prototype. Exploded View Part Numbers Top Enclosure Bottom Enclosure Raspberry Pi Battery Pack Screen Flash Drive Alignment Lip Battery Tray Mounting Rails Next up: Print enclosure Assemble real-world components Iterate on the design (if met with an obstacle during fabrication)"}, {"post_id": 10294, "ts": "2026-06-16T22:41:46Z", "hours": 1.4614, "text": "Devlog #1 — Initial Architecture and Packaging Study 🎉What I did this week: Defined system architecture for the cyberdeck (power, computer, input, output) Selected Raspberry Pi 4B as the main controller Created an initial system schematic/diagram to model subsystem interactions Performed a first packaging study in Onshape Verified that all core components fit within the proposed enclosure concept 🎚️Initial Schematic Note: This is a system-level schematic used to understand how components in the cyberdeck interact with each other, paired with a packaging study to estimate spatial requirements. This is an early-stage design exploration. The goal of this stage was to answer the question: What parts will Stardeck consist of, and how do they interact with one another? System Overview The cyberdeck is composed of four primary subsystems: Power Computer Input Output System Description Power subsystem: Provides energy to all other subsystems. This is the foundation of the system. Computer subsystem: The Raspberry Pi acts as the central controller, managing both input and output operations. Input subsystem: The keyboard is the primary input method. Additional input devices may be added later through USB expansion. Output subsystem: The display serves as the primary output device, showing system activity and user interface. 🪛Design Direction After reviewing publicly available cyberdeck designs, I decided on a compact tablet-like form factor. The current design consists of: A front-mounted display embedded into the case A Raspberry Pi and power bank mounted inside the enclosure behind the screen This configuration is chosen to prioritize reaching a functional MVP quickly. Future iterations may introduce improvements such as a rotating or laptop-style hinged display. 🔬Packaging Study Findings All dimensions are approximate and based on early-stage placeholder modeling. Units are in millimeters (length x width x height). Case: 230 x 160 x 40 Includes a cutout on the front face for the embedded display. Screen (initial placeholder): 200 x 120 x 15 Screen (final target, 7 inch): 155 x 87 x 15 Raspberry Pi 4B: 90 x 60 x 25 Slightly oversized in the model to account for cables, connectors, and mounting tolerance. Power bank: 110 x 70 x 20 Based on a typical 10,000 mAh USB battery. Final dimensions may change depending on selected model. Key Finding: The initial screen model was too large. The original estimate produced a diagonal of approximately 233 mm (about 9.2 inches), which did not match the intended 7 inch display size. After correction, the 155 x 87 mm screen model aligns with a 7 inch diagonal and is now used as the baseline for enclosure design. Current Conclusion The current enclosure design appears sufficient to house all core components based on the current placeholder assembly in Onshape. Remaining uncertainties primarily involve final battery selection and cable routing. 👣Next Steps Finalize selection of power bank Choose exact display model Begin KiCad schematic for wiring and power design Refine enclosure geometry in Onshape based on finalized components God bless you, Yodahe"}]...
|
Title: Stardeck by @YodaheWondimu | Stardance
Dev Title: Stardeck by @YodaheWondimu | Stardance
Devlogs:
Devlog #1 — Initial Architecture and Packaging Study 🎉What I did this week: Defined system architecture for the cyberdeck (power, computer, input, output) Selected Raspberry Pi 4B as the main controller Created an initial system schematic/diagram to model subsystem interactions Performed a first packaging study in Onshape Verified that all core components fit within the proposed enclosure concept 🎚️Initial Schematic Note: This is a system-level schematic used to understand how components in the cyberdeck interact with each other, paired with a packaging study to estimate spatial requirements. This is an early-stage design exploration. The goal of this stage was to answer the question: What parts will Stardeck consist of, and how do they interact with one another? System Overview The cyberdeck is composed of four primary subsystems: Power Computer Input Output System Description Power subsystem: Provides energy to all other subsystems. This is the foundation of the system. Computer subsystem: The Raspberry Pi acts as the central controller, managing both input and output operations. Input subsystem: The keyboard is the primary input method. Additional input devices may be added later through USB expansion. Output subsystem: The display serves as the primary output device, showing system activity and user interface. 🪛Design Direction After reviewing publicly available cyberdeck designs, I decided on a compact tablet-like form factor. The current design consists of: A front-mounted display embedded into the case A Raspberry Pi and power bank mounted inside the enclosure behind the screen This configuration is chosen to prioritize reaching a functional MVP quickly. Future iterations may introduce improvements such as a rotating or laptop-style hinged display. 🔬Packaging Study Findings All dimensions are approximate and based on early-stage placeholder modeling. Units are in millimeters (length x width x height). Case: 230 x 160 x 40 Includes a cutout on the front face for the embedded display. Screen (initial placeholder): 200 x 120 x 15 Screen (final target, 7 inch): 155 x 87 x 15 Raspberry Pi 4B: 90 x 60 x 25 Slightly oversized in the model to account for cables, connectors, and mounting tolerance. Power bank: 110 x 70 x 20 Based on a typical 10,000 mAh USB battery. Final dimensions may change depending on selected model. Key Finding: The initial screen model was too large. The original estimate produced a diagonal of approximately 233 mm (about 9.2 inches), which did not match the intended 7 inch display size. After correction, the 155 x 87 mm screen model aligns with a 7 inch diagonal and is now used as the baseline for enclosure design. Current Conclusion The current enclosure design appears sufficient to house all core components based on the current placeholder assembly in Onshape. Remaining uncertainties primarily involve final battery selection and cable routing. 👣Next Steps Finalize selection of power bank Choose exact display model Begin KiCad schematic for wiring and power design Refine enclosure geometry in Onshape based on finalized components God bless you, Yodahe
Devlog #2 - Component Assembly and Design Tuning This week, I was tuning my Stardeck designs to reach feasibility before submitting my design to Stardance for review. I started to test my initial design decisions using Onshape to model the spacing that each part would need, and I used that to finish up a component assembly that reflected how my parts would fit together in the real world. CAD Assembly Space was a critical factor in my cyberdeck because it was what everything inside of my enclosure lived on. Furthermore, my enclosure design evolved often to account for unanticipated constraints. A few of my enclosure features for Stardeck surprised me as I never even knew that I needed them at first. Clamshell Design: Remember how in the first devlog, I was considering using a rectangular prism with a carved-out back to house all the internal components? I found out very quickly that this would still make for a hard assembly once more than two parts came in. A clamshell design - top half, bottom half - would allow me to make the most of the space given because it would allow me to actually reach many parts of the internals. Alignment Lips: This took me a long time to conceptualize after hearing about these for the first time, but it became easy once I thought of a shoebox. The top of any shoebox fits on the bottom half and rests there - not because it’s screwed in place, but because the top half sort of wraps around the bottom half. These made the clamshell more robust as the “shoebox method” promised a safer screwdriver assembly as well. Mounting Rails: Placing the Raspberry Pi, which would be the basis of Stardeck’s computing subsystem, in the exact middle of the enclosure meant that other components - battery, screen, flash drive, etc - could reach it easily. However, it can’t just levitate, so it uses mounting rails to keep it up. The rails also come with holes for the Pi to be mounted onto for added security. Port Cutout: I felt so relieved after realizing that I needed this before shipping off all my CAD files to display on GitHub. The reason why was because it’s the hole in the enclosure that allows external cables to access the Pi’s USB ports. This makes essential functions such as swapping flash drives and connecting keyboards much easier. Overall, it’s a small design feature that makes assembly and maintenance much easier. System Architecture From the last devlog, we already knew how each component would connect to one another in practice. However, I found that for this iteration, the system could be modeled effectively at the subsystem level without a full PCB design or detailed electrical schematic. To follow, I created a System Architecture diagram to demonstrate how the parts of Stardeck interact with each other. After solving the electrical problem, I managed - with several days of me modeling components to depict and assemble - to solve the mechanical problem instead. Both were closely related to each other, which made for a lot of work when planning port maps, looking at diagrams of the port locations on a Raspberry Pi, finding components for the BOM that I want for my build, and so on. Summary I learned a lot about hardware selection, using Onshape to work around physical constraints, and building prototypes with future me in mind. I’m confident this design is ready to be submitted at its current state to Stardance. It’s simple and has just enough functionality without going overboard for a minimal viable product. With funding help from them, I’ll have the parts necessary to go from designing a prototype to fabricating a prototype. Exploded View Part Numbers Top Enclosure Bottom Enclosure Raspberry Pi Battery Pack Screen Flash Drive Alignment Lip Battery Tray Mounting Rails Next up: Print enclosure Assemble real-world components Iterate on the design (if met with an obstacle during fabrication)
Devlog #3 - Printing the Physical Enclosure Good news! This week, I managed to get my 3D printer up and running. Weeks of CAD work finally culminated in a pair of printed enclosure halves. Since I was going for a clamshell design for the first print, I printed both the top and bottom halves to see how they would go together. I knew I was technically doing this to test out tolerances and whatever, but I was secretly excited to be building something outside of Onshape for a change. Settings I mostly used my printer’s default profile, adding tree supports for the floating cantilever sections in the internal mounting rails. They printed cleanly and snapped away easily after fabrication. (Detailed slicer settings are documented separately in docs/printer_settings.md .) The only supports needed were for those mounting rails in the bottom half and the alignment lip on the top half. The results, as you’re about to see, went smoothly. Print Results Fresh off the 3D printer, I had both enclosure halves. The clamshell enclosure worked exactly how I’d hoped, and it seems like it will make disassembly easy enough to fill the internals with electronics (once I have them) and assembly easy enough to not irritate users. The alignment lips kept both halves aligned, and the lip mounting holes worked as a visual aid that told you whether or not each enclosure half was level or not - a perfect circle meant aligned, sliding semicircles meant you had to nudge it a bit. The other visible features - the display mounting area, port cutout, and battery tray - also turned out great. I was surprised to see the top half fit like a glove onto the bottom half first-try. After all, I’ve heard scary stories around an imaginary campfire where one tolerance requires reprinting everything (spooky). Luckily, no such thing happened here. And the mounting holes? They all came out exactly as modeled. The M3 holes on the alignment lips and the M2.5 holes on the display mounts and Pi rails matched the dimensions I designed. Considering how much I’d heard about tolerance problems, seeing everything line up on the first print felt like a small victory. When I Thought I Messed Up So…something happened. I noticed fringing filament that was sticking out of certain surfaces. I thought this would compromise the design’s integrity, and so I searched up the problem. After looking online, I found that this event was known as stringing, where melted filament can ooze from the nozzle during travel and solidify on top of whatever it lands on. I was relieved to figure out that this wasn’t a structural problem, but rather an aesthetic one, which I solved by clipping off any excess filament similar to the tree supports. Summary Printing the enclosure completely changed how the project felt. Up until this point, Stardeck had only existed inside Onshape. Holding both halves in my hands made it feel less like an idea and more like something I was actually going to finish. I don’t have my electronics just yet, but I believe that Hack Club’s funding process will give me the parts that I need to turn my idea into a reality. Speaking of the funding process, I’ve also spent a great deal of time in consecutive work sessions just documenting. I’ve been preparing my JOURNAL.md to showcase day-to-day summaries of progress, screenshotting my Onshape designs, and sharing my fabrication workflow. Steps like these are what allow a project to be considered for hardware grants later, which I need to receive the electronics that’ll make Stardeck a real cyberdeck. The enclosure may only be plastic for now, but it’s the first physical piece of Stardeck. Next comes the stage I’ve been designing around from the beginning: bringing it to life with actual hardware. Next Up: Finish up documentation/design tweaks Submit design for hardware funding Assemble components into the enclosure Craft a booting prototype?
Devlog #4: Iterating CAD for component assembly and adding necessary detail With the hardware flow open, I received feedback on my hardware project. A reviewer returned my funding request and advised me to work on adding more detail to my CAD model, since it’s important for actually putting the hardware together and makes CAD your best wingman. Detailed Assembly The detailed assembly would be close to the concept from Devlog #2, but: Instead of blocks for every hardware component, I’ll use open-source .step files as 1:1 reference models. If the model accurately represents the real part and tolerances are accounted for, Onshape fits should represent reality. (Attribution is given in docs/ATTRIBUTIONS.md in my GitHub repository.) Fasteners mattered now, so there was no more pairing of generic screws with generic nuts and calling it a day. The clearance holes from before weren’t as reliable as threaded bosses for mounting purposes, so I had to make replacements where necessary. Hardware Modeling and Fit Raspberry Pi 4B Importing the model for the Raspberry Pi 4B revealed an incorrect assumption. I assumed its 4 mounting holes sat near the corners of the board, but they were actually positioned differently. I adjusted the gap between the mounting rails to allow the Pi to rest and moved the mounting holes to where the Pi could line up on top of them, resulting in a mounting-aware pair of rails that I fastened shortly after. Elecrow RC070 7-inch Touchscreen Display I took the given file from its product page and merged its individual parts into one composite part. After composing, I added mounting holes matching those of the real component. The screen’s width fit perfectly into the top enclosure’s cutout (same width dimension), and with that, I added 0.5mm clearance to all sides of the top enclosure half’s screen cutout in case tolerance reality decides to strike my hardware. Anker Portable Charger/Power Bank This was where it got tricky. There was no available CAD model for the battery pack online, so I had to reverse engineer it myself. Our more realistic battery model had a length of ~153mm, while our placeholder had a length of ~115mm. Since our battery tray was initially modeled to fit snugly around the placeholder model (back when we just needed everything to fit together), our actual battery wasn’t going to fit. Our much more realistic model won over, and I reworked the battery tray with a looser but not as risky fit, centered closer to the side opposite the mounting rails of the inner enclosure’s bottom half. MicroCenter Flash Drive This part required some more of the same principle - reverse engineering - and having the flash drive with me made it easier to create a reference model. Dimensions that are reasonably close to the real thing in Onshape allow us to achieve the same purpose: testing the spacing and enclosure considerations of Stardeck. Challenges Reverse engineering the battery and flash drive was where I learned the most during this revision. I implemented the dimensions that were most relevant to each part’s size and connectivity (since I didn’t need 10/10 looks here) to concoct replicas that came pretty close to the real thing. I also had to design holes that would work with a custom Featurescript for threading. I tried to increase the thickness of certain sides with mounting holes for ThreadCreator’s sake, but what ended up working was switching to a similar Featurescript called BoazThread. What’s complete: Refined key details of the component assembly Related my enclosure hardware to 1:1 hardware models Reverse engineered parts without publicly available CAD models Next up: Refine design further (if required for funding) Receive physical parts Assemble Stardeck IRL Get Stardeck to boot...
|
1792731010.1167269
|
1793335810.1167269
|
|
41210
|
Waey-وعي by @mahmoudkhalil5129 | Stardance
|
mahmoudkhalil5129
|
1
|
31.27
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-28T20:26:16Z", "hours": 13.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Waey, or (وعي) in Arabic, is a platform for awareness in specific fields (finance, health, education, environment). It aims to increase awareness in Egypt and around the world. The platform has tools to help you, like a calculator for your sugar and food and drink intake, a breathing exercise, a healthy food category, and more. I faced many challenges, like setting up the Supabase tables, the crashes, debugging some code the AI had made, but I’m proud that I built this for my beloved country Egypt and for the world. Visit waey-m7.com, sign up, and start your journey for a life that’s healthier and effective, know how to control your money, and know how to study well!", "repo": "https://github.com/unknown529111-tech/waey", "demo": "https://waey-m7.com/"}]...
|
[{"post_id": 57745, "ts": "202 [{"post_id": 57745, "ts": "2026-08-30T00:39:41Z", "hours": 2.8469, "text": "Hi! Hope everyone reading this is doing well. I was working on some features to make the user more comfortable and to encourage more frequent use of the website. So, I added an eye icon on the navbar that, when clicked, blurs any sensitive information you’ve entered on the website. This means you can use the website anywhere without letting anyone else see information you don’t want to share. I also added something new to the dashboard that detects when you haven’t slept well or haven’t eaten well; there will be a text with advice you can follow, like when you haven’t slept well, the website will tell you: “Low sleep detected. Try a breathing exercise to reset.” I also made the hero section a little smaller. If anyone has any ideas, please let me know. The website: https://waey-m7.com"}, {"post_id": 57017, "ts": "2026-08-29T02:46:44Z", "hours": 9.7519, "text": "Its been a week working on the new design. I changed the layout a little bit, and I added some videos made by AI in every tab. For example, in the health tab, there are is a video of healthy food and some people doing exercise, like that. If anyone has any ideas I can add to the project, please tell me. Thank you for your time. The website: waey-m7.com"}, {"post_id": 42350, "ts": "2026-08-07T01:04:56Z", "hours": 5.6667, "text": "Update on Waey i just updated waey and rework at the frontend and make it more glassy :p , and fixed some issues like the daily tab wasnt working and some data errors and some css errors, im still working on it and make it better, if anyone have any advise i can add it to the project please tell me :) https://waey-m7.com"}, {"post_id": 36595, "ts": "2026-07-28T20:12:50Z", "hours": 12.8436, "text": "Waey - وعي Waey, or (وعي) in Arabic, is a platform for awareness in specific fields (finance, health, education, environment). It aims to increase awareness in Egypt and around the world. The platform has tools to help you, like a calculator for your sugar and food and drink intake, a breathing exercise, a healthy food category, and more! You can try it!-> https://waey-m7.com/"}]...
|
Title: Waey-وعي by @mahmoudkhalil5129 | Stardance
Title: Waey-وعي by @mahmoudkhalil5129 | Stardance
Devlogs:
Waey - وعي Waey, or (وعي) in Arabic, is a platform for awareness in specific fields (finance, health, education, environment). It aims to increase awareness in Egypt and around the world. The platform has tools to help you, like a calculator for your sugar and food and drink intake, a breathing exercise, a healthy food category, and more! You can try it!-> https://waey-m7.com/
Update on Waey i just updated waey and rework at the frontend and make it more glassy :p , and fixed some issues like the daily tab wasnt working and some data errors and some css errors, im still working on it and make it better, if anyone have any advise i can add it to the project please tell me :) https://waey-m7.com
Its been a week working on the new design. I changed the layout a little bit, and I added some videos made by AI in every tab. For example, in the health tab, there are is a video of healthy food and some people doing exercise, like that. If anyone has any ideas I can add to the project, please tell me. Thank you for your time. The website: waey-m7.com
Hi! Hope everyone reading this is doing well. I was working on some features to make the user more comfortable and to encourage more frequent use of the website. So, I added an eye icon on the navbar that, when clicked, blurs any sensitive information you’ve entered on the website. This means you can use the website anywhere without letting anyone else see information you don’t want to share. I also added something new to the dashboard that detects when you haven’t slept well or haven’t eaten well; there will be a text with advice you can follow, like when you haven’t slept well, the website will tell you: “Low sleep detected. Try a breathing exercise to reset.” I also made the hero section a little smaller. If anyone has any ideas, please let me know. The website: https://waey-m7.com
Ships:
Waey, or (وعي) in Arabic, is a platform for awareness in specific fields (finance, health, education, environment). It aims to increase awareness in Egypt and around the world. The platform has tools to help you, like a calculator for your sugar and food and drink intake, a breathing exercise, a healthy food category, and more. I faced many challenges, like setting up the Supabase tables, the crashes, debugging some code the AI had made, but I’m proud that I built this for my beloved country Egypt and for the world. Visit waey-m7.com, sign up, and start your journey for a life that’s healthier and effective, know how to control your money, and know how to study well!...
|
1793123774.7481146
|
1793210174.7481146
|
|
50008
|
Polymarket Bot by @epr | Stardance
|
epr
|
0
|
31.24
|
0
|
[]
|
[{"post_id": 72001, "ts": "202 [{"post_id": 72001, "ts": "2026-09-21T23:38:02Z", "hours": 9.8947, "text": "Actually in the thick of it right now ngl. Lowkey kinda getting closer to have a actual working v1 I can feel it in my britches. Currently working on the interface for polymarket api to connect to so the bot has multi-exchange capability. Yeah I know cool as biscuits I guess ¯ _ (ツ)_/¯"}, {"post_id": 59960, "ts": "2026-09-02T01:10:12Z", "hours": 8.6428, "text": "Working on the websocket currently, I fully coded the websocket for the global api instead of the US based polymarket endpoint so I have to create another websocket for people located in the US."}, {"post_id": 51435, "ts": "2026-08-21T04:24:17Z", "hours": 12.7025, "text": "validation program up and running!"}]...
|
Title: Polymarket Bot by @epr | Stardance
Devlogs Title: Polymarket Bot by @epr | Stardance
Devlogs:
validation program up and running!
Working on the websocket currently, I fully coded the websocket for the global api instead of the US based polymarket endpoint so I have to create another websocket for people located in the US.
Actually in the thick of it right now ngl. Lowkey kinda getting closer to have a actual working v1 I can feel it in my britches. Currently working on the interface for polymarket api to connect to so the bot has multi-exchange capability. Yeah I know cool as biscuits I guess ¯ _ (ツ)_/¯...
|
1792615743.1696048
|
1793220543.1696048
|
|
24808
|
Noodle Padoodle by @olivia_w | Stardance
|
olivia_w
|
0
|
31.22
|
0
|
[]
|
[{"post_id": 33198, "ts": "202 [{"post_id": 33198, "ts": "2026-07-22T21:51:37Z", "hours": 0.4142, "text": "Log#20 I polished my github repository :)"}, {"post_id": 28194, "ts": "2026-07-14T10:16:32Z", "hours": 2.5814, "text": "Log#19 I designed, cut and re-assmbled the frame."}, {"post_id": 27536, "ts": "2026-07-13T05:34:40Z", "hours": 0.9647, "text": "Log#18 I polished my Guzheng and my github repository so that it’s ready for shipping. I added BOM.csv and this wiring guide. I also cut the Aluminum profiles with a handsaw but I didn’t record the time here. It took me roughly an hour. This way it would be more portable!"}, {"post_id": 27034, "ts": "2026-07-12T06:14:47Z", "hours": 2.3672, "text": "Log#17 I AM DONE!!!!!!!!!!!! Because I ran into unresolved bugs for like nine of my 17 strings, I decided to only use eight of them which are working fine. I also made the code baseline-adaptive so that I don’t have to tune it manually everytime! Now it’s robust and sounds perfect! Hear it in my video! All these days of hardwork paid off I never imagined that I could finish such a huge project on my own. Though it’s not perfect for now, I’m still sooooo happy and I’ve grown a LOT during the process. Nothing is impossible and ALWAYS BELIEVE IN YOUR POTENTIALS :)"}, {"post_id": 26886, "ts": "2026-07-11T22:45:44Z", "hours": 0.7503, "text": "Log#16 I cut out the silence before the sounds in the samples and exported as wav format :)"}, {"post_id": 26862, "ts": "2026-07-11T21:51:17Z", "hours": 1.1003, "text": "Log#15 I connected all the wires to the breadboard and ESP32 :) It was a LOT of wires but it was very therapeutic actually Do not stay up till 2am!! The next morning you will feel like a floating ghost"}, {"post_id": 26442, "ts": "2026-07-11T07:38:49Z", "hours": 2.6833, "text": "Log #14 I accidentally closed all the tabs while recording so it should be two hours in total… I finished assembling all the strings – 17 of them, because the rest are lost :( I found a shortcut which is using the end of the string that has a stick attached to it to fix the string onto the load cells. It was a LOT of taping and tying knots. LOL I skipped gym today but this was a pretty good exercise I had to re-tie a lot of times to make sure the strings are tight enough. At this point, I’ll just have to complete the project no matter what cuz I’m already here and why not"}, {"post_id": 26169, "ts": "2026-07-10T20:16:50Z", "hours": 2.0169, "text": "long#13 I ADDED THE PITCH FEATURE for my one-string demo!!! YAYYYY Now the pitch can change as well My next step would be assembling all the rest of the strings!!"}, {"post_id": 25754, "ts": "2026-07-10T06:13:51Z", "hours": 4.1597, "text": "Log#12 It WORKED!!!!! OMGGGGGG My one-string version code worked! Now it can detect whether I plucked the string or pressed the string, and play the sound at the corresponding volume when I pluck it. I first wrote pseudocode and then used AI’s help to turn it into python code. Then I tuned the parameters manually. And it finally worked on the instrument!!! My wires once fell apart and I had to reconnect them :( But it’s all worth it The delay is still a bit high and the pitch function is not fixed yet. I believe I’ll sort those out tomorrow and ship my project by then! Huge progress today already!"}, {"post_id": 25138, "ts": "2026-07-09T05:04:16Z", "hours": 1.0106, "text": "Log #11 I assembled two strings onto the frame for testing and coding. At first I was very happy that the first string was done, but then I found out that I had tied it to the wrong side. I wanted to give up but then I untied it and then tied it again. A little setback will not keep me from moving forward :) Next time I’ll definitely use screws to fix the load cells. Tape is NOT A SHORTCUT though it seemed like one to me :(((((( My dorm is officially a lab now hahahahaha"}, {"post_id": 24487, "ts": "2026-07-08T01:51:44Z", "hours": 2.6681, "text": "log#10 I received my packages and started building. Today I assembled the Aluminum frame and soldered 16 load cells. Amazon only shipped me three load cells kits instead of four, so I will ask them to ship me one more which is going to take a few more days :( Soldering needs lots of patience especially when I accidentally soldered two plates together. And I had to use a lot of strength to hold the Aluminum profiles while I assemble them. It would be so much easier if I worked with teammates!"}, {"post_id": 21984, "ts": "2026-07-04T06:24:56Z", "hours": 2.7172, "text": "log#9 I thought about the flow of my code and started drafting the code which processes the signals and play the according sounds. In the next few days (before my materials arrive on Monday), I will test the code on one string. Got lots to do but the path is getting clearer and clearer :)"}, {"post_id": 21254, "ts": "2026-07-03T02:55:35Z", "hours": 1.4667, "text": "Log#8 I drew the final design for the Aluminum frame. I thought I might just discard the pulleys and eye bolts for now. I hope my data would still be clean if I tighten my strings enough! I also updated the final cost of my project on github :) I also made a little demo video"}, {"post_id": 21203, "ts": "2026-07-03T00:41:07Z", "hours": 0.4333, "text": "log#7 I tied a Guzheng string to my loadcell set up and plucked the string for test. The graph was pretty chaotic. Sometimes the force went up when I pluck it, sometimes it went down. I think I need to fix my string to somewhere and also place a bridge in the middle to stablize my data"}, {"post_id": 21113, "ts": "2026-07-02T22:14:04Z", "hours": 0.8839, "text": "Log#6 I connected my ESP32 to HX711 and my laptop. At first the Arduino IDE could not find the port, so I searched online and found out that I needed to download another app, and also I forgot to connect the power wires for my HX711 lol Those are great lessons and I learned a lot in the process of fixing problems. At the end when the sensor’s data started displaying on the screen, I was sooooooo happy!!"}, {"post_id": 16616, "ts": "2026-06-27T01:07:10Z", "hours": 0.5169, "text": "Log#5 I put the play sound command into a function so it’s more compact. I was also trying to install pyo to manipulate the sounds but it failed to install the wheel. Now my VScode has crashed out :("}, {"post_id": 16394, "ts": "2026-06-26T17:51:46Z", "hours": 1.1961, "text": "Log#4 I edited the sound recorded from the Guzheng via Audacity and then wrote python codes to play it. I used the pygame library and it was successful! I ran into trouble cloning my repository and committing changes though, so I looked up the hackclub guides and solved the issue! Big thanks!"}, {"post_id": 16005, "ts": "2026-06-26T00:04:37Z", "hours": 1.1167, "text": "I found a tutorial on wiring the load cells, HX711 and ESP32 and saved screenshots in my repository. I also calculated and modeled the size of the Aluminum frame. The hard part was that I need the height of the middle bar plus the height of my U-shaped pulleys to be slightly higher than the height of my load cells, so that the pulleys can support my strings and would be able to play on both sides of the bar."}, {"post_id": 15826, "ts": "2026-06-25T18:41:10Z", "hours": 0.9078, "text": "Log#2 I created a github repository and wrote a preliminary version of the README.md file (yayyy!) At first I was confused that the enter key does not break the lines, so I browsed through github docs and learned that I have to use the markdown language. It was really fun learning about how to format text in github, especially creating a table for my materials and cost :)"}, {"post_id": 15510, "ts": "2026-06-25T06:27:46Z", "hours": 1.2667, "text": "Log#1 Navigating Fusion I downloaded the app and tried to make a 3D model of the Aluminum frame and L-shaped brackets. I had a hard time navigating the app :("}]...
|
Title: Noodle Padoodle by @olivia_w | Stardance
D Title: Noodle Padoodle by @olivia_w | Stardance
Devlogs:
Log#1 Navigating Fusion I downloaded the app and tried to make a 3D model of the Aluminum frame and L-shaped brackets. I had a hard time navigating the app :(
Log#2 I created a github repository and wrote a preliminary version of the README.md file (yayyy!) At first I was confused that the enter key does not break the lines, so I browsed through github docs and learned that I have to use the markdown language. It was really fun learning about how to format text in github, especially creating a table for my materials and cost :)
I found a tutorial on wiring the load cells, HX711 and ESP32 and saved screenshots in my repository. I also calculated and modeled the size of the Aluminum frame. The hard part was that I need the height of the middle bar plus the height of my U-shaped pulleys to be slightly higher than the height of my load cells, so that the pulleys can support my strings and would be able to play on both sides of the bar.
Log#4 I edited the sound recorded from the Guzheng via Audacity and then wrote python codes to play it. I used the pygame library and it was successful! I ran into trouble cloning my repository and committing changes though, so I looked up the hackclub guides and solved the issue! Big thanks!
Log#5 I put the play sound command into a function so it’s more compact. I was also trying to install pyo to manipulate the sounds but it failed to install the wheel. Now my VScode has crashed out :(
Log#6 I connected my ESP32 to HX711 and my laptop. At first the Arduino IDE could not find the port, so I searched online and found out that I needed to download another app, and also I forgot to connect the power wires for my HX711 lol Those are great lessons and I learned a lot in the process of fixing problems. At the end when the sensor’s data started displaying on the screen, I was sooooooo happy!!
log#7 I tied a Guzheng string to my loadcell set up and plucked the string for test. The graph was pretty chaotic. Sometimes the force went up when I pluck it, sometimes it went down. I think I need to fix my string to somewhere and also place a bridge in the middle to stablize my data
Log#8 I drew the final design for the Aluminum frame. I thought I might just discard the pulleys and eye bolts for now. I hope my data would still be clean if I tighten my strings enough! I also updated the final cost of my project on github :) I also made a little demo video
log#9 I thought about the flow of my code and started drafting the code which processes the signals and play the according sounds. In the next few days (before my materials arrive on Monday), I will test the code on one string. Got lots to do but the path is getting clearer and clearer :)
log#10 I received my packages and started building. Today I assembled the Aluminum frame and soldered 16 load cells. Amazon only shipped me three load cells kits instead of four, so I will ask them to ship me one more which is going to take a few more days :( Soldering needs lots of patience especially when I accidentally soldered two plates together. And I had to use a lot of strength to hold the Aluminum profiles while I assemble them. It would be so much easier if I worked with teammates!
Log #11 I assembled two strings onto the frame for testing and coding. At first I was very happy that the first string was done, but then I found out that I had tied it to the wrong side. I wanted to give up but then I untied it and then tied it again. A little setback will not keep me from moving forward :) Next time I’ll definitely use screws to fix the load cells. Tape is NOT A SHORTCUT though it seemed like one to me :(((((( My dorm is officially a lab now hahahahaha
Log#12 It WORKED!!!!! OMGGGGGG My one-string version code worked! Now it can detect whether I plucked the string or pressed the string, and play the sound at the corresponding volume when I pluck it. I first wrote pseudocode and then used AI’s help to turn it into python code. Then I tuned the parameters manually. And it finally worked on the instrument!!! My wires once fell apart and I had to reconnect them :( But it’s all worth it The delay is still a bit high and the pitch function is not fixed yet. I believe I’ll sort those out tomorrow and ship my project by then! Huge progress today already!
long#13 I ADDED THE PITCH FEATURE for my one-string demo!!! YAYYYY Now the pitch can change as well My next step would be assembling all the rest of the strings!!
Log #14 I accidentally closed all the tabs while recording so it should be two hours in total… I finished assembling all the strings – 17 of them, because the rest are lost :( I found a shortcut which is using the end of the string that has a stick attached to it to fix the string onto the load cells. It was a LOT of taping and tying knots. LOL I skipped gym today but this was a pretty good exercise I had to re-tie a lot of times to make sure the strings are tight enough. At this point, I’ll just have to complete the project no matter what cuz I’m already here and why not
Log#15 I connected all the wires to the breadboard and ESP32 :) It was a LOT of wires but it was very therapeutic actually Do not stay up till 2am!! The next morning you will feel like a floating ghost
Log#16 I cut out the silence before the sounds in the samples and exported as wav format :)
Log#17 I AM DONE!!!!!!!!!!!! Because I ran into unresolved bugs for like nine of my 17 strings, I decided to only use eight of them which are working fine. I also made the code baseline-adaptive so that I don’t have to tune it manually everytime! Now it’s robust and sounds perfect! Hear it in my video! All these days of hardwork paid off I never imagined that I could finish such a huge project on my own. Though it’s not perfect for now, I’m still sooooo happy and I’ve grown a LOT during the process. Nothing is impossible and ALWAYS BELIEVE IN YOUR POTENTIALS :)
Log#18 I polished my Guzheng and my github repository so that it’s ready for shipping. I added BOM.csv and this wiring guide. I also cut the Aluminum profiles with a handsaw but I didn’t record the time here. It took me roughly an hour. This way it would be more portable!
Log#19 I designed, cut and re-assmbled the frame.
Log#20 I polished my github repository :)...
|
1792702065.9707575
|
1793306865.9707575
|
|
16846
|
Makemore by @xerneas | Stardance
|
|
0
|
31.15
|
0
|
[]
|
[{"post_id": 32823, "ts": "202 [{"post_id": 32823, "ts": "2026-07-22T06:52:47Z", "hours": 10.4544, "text": "modern-lm: modernizing the architecture (RMSNorm, RoPE, SwiGLU) Starting from my GPT-2 124M reproduction and dragging the architecture from 2019 to 2026, one component at a time. The plan is a ladder: swap one thing, understand exactly what it does, keep going. This devlog covers the three architecture swaps. What changed: LayerNorm to RMSNorm, and dropped every bias. RMSNorm skips the mean-subtraction and only rescales by root-mean-square times a learned gain. The residual stream’s problem is magnitude drift, not offset, so re-centering was doing nothing. Half the ops, one fewer param vector per norm, and it sets up Muon later (which wants a model that is purely matrices plus a few gains). Learned position embeddings to RoPE. Deleted the wpe table entirely. Instead of adding a position vector, RoPE rotates the query and key feature pairs by a position-dependent angle, so attention scores end up depending on the relative distance between tokens, not their absolute index. GELU MLP to SwiGLU. Replaced the Linear to GELU to Linear block with a gated FFN: one branch computes features, a second branch (through SiLU) decides how much of each passes, then they multiply and project down. Went with 4x width, so it’s a bigger model, not a param-matched swap. Deliberate: I care more about a stronger model here than a clean ablation, and I can spend the compute. What was actually hard: The swaps are each ~20 to 40 lines. The trap was RoPE. It’s the classic silent bug: get the pairing convention wrong between the cos/sin cache and the apply function and the model still trains fine, it just quietly underperforms and you never find out. So I wrote a unit test instead of trusting the loss curve: shift the whole sequence by k positions and assert the attention scores between the same token pairs are unchanged. Rotation invariance either holds or it doesn’t (like an odometer). Next QK-norm, untied embeddings + zero-init prWSD schedule. Then the actual point: benchmark the modernized model against the untouched GPT-2 baseline (Row 0) at a fixed token budget on FineWeb-Edu, and see which Then scale the frozen recipe to ~500M."}, {"post_id": 29364, "ts": "2026-07-16T08:26:54Z", "hours": 4.6358, "text": "GPT-2 124M Reproduction Reproduced GPT-2 124M (the old 2019 model) from scratch, trained on ~10B tokens across 2x RTX 5090 in ~7 hours. Final val loss ~3.10. Dataset FineWeb-Edu sample-10BT, ~10B tokens GPT-2 BPE (tiktoken), vocab 50257 padded to 50304 100 uint16 shards (99 train, 1 val), ~19GB Streaming download + multiprocessing tokenizer — switching to imap_unordered with a bigger chunksize took tokenizing from ~2 hours to ~6 minutes Architecture GPT-2 124M: embd=768, block_size=1024, weight-tied embeddings (~124M params) 12 blocks, each with causal self-attention (12 heads, flash attention) + MLP (Linear → GELU → Linear, 4x) Pre-LayerNorm + residuals on both sublayers Training bf16 + torch.compile, AdamW, OneCycleLR cosine with warmup, grad clip 1.0 0.5M-token effective batch (524,288), held fixed via gradient accumulation DDP across 2x RTX 5090 on RunPod, 19,073 steps (~1 epoch), ~7 hours Checkpoint every 200 steps + auto-resume babysit script Results Val loss ~3.10 Coherent, topical English continuations. It’s a base model, so it continues a prompt rather than answering it . Shipped an inference script + Gradio demo, uploaded to Hugging Face What was actually hard The architecture was basically the char transformer from last devlog, just wider (124M vs ~10M) with BPE instead of 65 chars. The model was the easy part. The real work was scale engineering: sharding 10B tokens to stream off disk, gradient accumulation to hit a 0.5M-token batch on cards that OOM at batch 8, multi-GPU gradient sync with DDP, mixed precision, and checkpoint/resume so a 7-hour cloud run survives interruptions. That’s what turns a transformer into a trained LM."}, {"post_id": 15980, "ts": "2026-06-25T23:09:10Z", "hours": 11.1422, "text": "Tiny Shakespeare (decoder-only transformer) Dataset: Tiny Shakespeare, ~1.1M characters vocab 65 Architecture: GPT-style decoder token embedding + learned position embedding (embd=384) 6 transformer blocks, each: multi-head causal self-attention (8 heads, head_size=48) feed-forward (Linear → ReLU → Linear) pre-LayerNorm + residual connections on both sublayers final LayerNorm → linear to vocab block_size=64, dropout=0.2 Training: AdamW, lr=1e-4 ExponentialLR, gamma=0.99995 batch size 1024 5000 iters CUDA + torch.compile Results: train loss = 1.26 val loss = 1.52 Why it worked: Attention replaces flattening. Instead of mashing all 64 embeddings into one vector, each position attends to the relevant earlier positions directly. Sequence structure is preserved instead of thrown away — the exact failure mode of mlp3. The receptive field is the full block (64 chars) and every position can use all of it, not just a fixed local window. Residual connections + pre-LayerNorm let 6 blocks stack and actually train. Position embeddings give the model order information that a bag-of-embeddings MLP never had. Against the mlp3 goals: Goal was dev loss < 1.7 → hit 1.52. Goal was “generate actual words and sentences” → it now produces speaker tags, line breaks, and mostly real English words in Shakespearean cadence. It learned the SPEAKER:\\n dialogue form like mlp3 did, but this time it fills the dialogue with coherent structure instead of gibberish. The train/dev gap: 1.26 vs 1.52→ much tighter than mlp3’s 1.12/2.02. Dropout 0.2 + a context long enough to actually be useful means it’s learning real patterns, not memorizing short-range ones. Notes / loose ends: LR never decays much → gamma=0.99995 over 5000 steps only drops lr from 1e-4 to ~7.8e-5, so the schedule is nearly flat. Loss was still falling at step 5000; more iters or a higher/decaying lr would likely push val below 1.5. Next: Decay the LR properly (or warmup + cosine) and train longer to close in on ~1.4. Scale block_size for longer context now that attention makes it affordable. Develop gpt-2 (the old sucky model from 2019)"}, {"post_id": 7016, "ts": "2026-06-11T19:28:20Z", "hours": 4.9217, "text": "makemore — devlog mlp2-gpu: names MLP Dataset: Karpathy’s names.txt (32k names, vocab 27) Architecture: embed=10 -> flatten -> linear(200) -> tanh -> linear(27) Training: AdamW, lr=1e-3 200 epochs MPS Result: dev loss = 2.20 Samples: bhuza fremah mykeslanna talee The model worked because names are short and mostly depend on local character patterns. mlp3: Tiny Shakespeare (without a guide and with single hidden layer) Dataset: 1.1M characters vocab 65 Architecture: embed=32, hidden=400, block_size=16 Training: batch size 8192 600 epochs CUDA Results: train loss = 1.12 dev loss = 2.02 Samples: LERCUTIF: MARCAPUL: HENRY: Why it failed: 16 characters of context is too short for prose. Flattening embeddings throws away sequence structure. The model learned the easiest pattern: SPEAKER:\\n dialogue. Large train/dev gap suggests overfitting to short-range patterns. The model was not too small. It was the wrong architecture. Next: WaveNet-style hierarchical MLP from the next lecture. Instead of flattening all embeddings at once, combine them in stages to preserve locality and expand the receptive field. Goal: dev loss < 1.7 on Tiny Shakespeare generate actual words and sentences After that: transformers."}]...
|
Title: Makemore by @xerneas | Stardance
Devlogs:
Title: Makemore by @xerneas | Stardance
Devlogs:
makemore — devlog mlp2-gpu: names MLP Dataset: Karpathy’s names.txt (32k names, vocab 27) Architecture: embed=10 -> flatten -> linear(200) -> tanh -> linear(27) Training: AdamW, lr=1e-3 200 epochs MPS Result: dev loss = 2.20 Samples: bhuza fremah mykeslanna talee The model worked because names are short and mostly depend on local character patterns. mlp3: Tiny Shakespeare (without a guide and with single hidden layer) Dataset: 1.1M characters vocab 65 Architecture: embed=32, hidden=400, block_size=16 Training: batch size 8192 600 epochs CUDA Results: train loss = 1.12 dev loss = 2.02 Samples: LERCUTIF: MARCAPUL: HENRY: Why it failed: 16 characters of context is too short for prose. Flattening embeddings throws away sequence structure. The model learned the easiest pattern: SPEAKER:\n dialogue. Large train/dev gap suggests overfitting to short-range patterns. The model was not too small. It was the wrong architecture. Next: WaveNet-style hierarchical MLP from the next lecture. Instead of flattening all embeddings at once, combine them in stages to preserve locality and expand the receptive field. Goal: dev loss < 1.7 on Tiny Shakespeare generate actual words and sentences After that: transformers.
Tiny Shakespeare (decoder-only transformer) Dataset: Tiny Shakespeare, ~1.1M characters vocab 65 Architecture: GPT-style decoder token embedding + learned position embedding (embd=384) 6 transformer blocks, each: multi-head causal self-attention (8 heads, head_size=48) feed-forward (Linear → ReLU → Linear) pre-LayerNorm + residual connections on both sublayers final LayerNorm → linear to vocab block_size=64, dropout=0.2 Training: AdamW, lr=1e-4 ExponentialLR, gamma=0.99995 batch size 1024 5000 iters CUDA + torch.compile Results: train loss = 1.26 val loss = 1.52 Why it worked: Attention replaces flattening. Instead of mashing all 64 embeddings into one vector, each position attends to the relevant earlier positions directly. Sequence structure is preserved instead of thrown away — the exact failure mode of mlp3. The receptive field is the full block (64 chars) and every position can use all of it, not just a fixed local window. Residual connections + pre-LayerNorm let 6 blocks stack and actually train. Position embeddings give the model order information that a bag-of-embeddings MLP never had. Against the mlp3 goals: Goal was dev loss < 1.7 → hit 1.52. Goal was “generate actual words and sentences” → it now produces speaker tags, line breaks, and mostly real English words in Shakespearean cadence. It learned the SPEAKER:\n dialogue form like mlp3 did, but this time it fills the dialogue with coherent structure instead of gibberish. The train/dev gap: 1.26 vs 1.52→ much tighter than mlp3’s 1.12/2.02. Dropout 0.2 + a context long enough to actually be useful means it’s learning real patterns, not memorizing short-range ones. Notes / loose ends: LR never decays much → gamma=0.99995 over 5000 steps only drops lr from 1e-4 to ~7.8e-5, so the schedule is nearly flat. Loss was still falling at step 5000; more iters or a higher/decaying lr would likely push val below 1.5. Next: Decay the LR properly (or warmup + cosine) and train longer to close in on ~1.4. Scale block_size for longer context now that attention makes it affordable. Develop gpt-2 (the old sucky model from 2019)
GPT-2 124M Reproduction Reproduced GPT-2 124M (the old 2019 model) from scratch, trained on ~10B tokens across 2x RTX 5090 in ~7 hours. Final val loss ~3.10. Dataset FineWeb-Edu sample-10BT, ~10B tokens GPT-2 BPE (tiktoken), vocab 50257 padded to 50304 100 uint16 shards (99 train, 1 val), ~19GB Streaming download + multiprocessing tokenizer — switching to imap_unordered with a bigger chunksize took tokenizing from ~2 hours to ~6 minutes Architecture GPT-2 124M: embd=768, block_size=1024, weight-tied embeddings (~124M params) 12 blocks, each with causal self-attention (12 heads, flash attention) + MLP (Linear → GELU → Linear, 4x) Pre-LayerNorm + residuals on both sublayers Training bf16 + torch.compile, AdamW, OneCycleLR cosine with warmup, grad clip 1.0 0.5M-token effective batch (524,288), held fixed via gradient accumulation DDP across 2x RTX 5090 on RunPod, 19,073 steps (~1 epoch), ~7 hours Checkpoint every 200 steps + auto-resume babysit script Results Val loss ~3.10 Coherent, topical English continuations. It’s a base model, so it continues a prompt rather than answering it . Shipped an inference script + Gradio demo, uploaded to Hugging Face What was actually hard The architecture was basically the char transformer from last devlog, just wider (124M vs ~10M) with BPE instead of 65 chars. The model was the easy part. The real work was scale engineering: sharding 10B tokens to stream off disk, gradient accumulation to hit a 0.5M-token batch on cards that OOM at batch 8, multi-GPU gradient sync with DDP, mixed precision, and checkpoint/resume so a 7-hour cloud run survives interruptions. That’s what turns a transformer into a trained LM.
modern-lm: modernizing the architecture (RMSNorm, RoPE, SwiGLU) Starting from my GPT-2 124M reproduction and dragging the architecture from 2019 to 2026, one component at a time. The plan is a ladder: swap one thing, understand exactly what it does, keep going. This devlog covers the three architecture swaps. What changed: LayerNorm to RMSNorm, and dropped every bias. RMSNorm skips the mean-subtraction and only rescales by root-mean-square times a learned gain. The residual stream’s problem is magnitude drift, not offset, so re-centering was doing nothing. Half the ops, one fewer param vector per norm, and it sets up Muon later (which wants a model that is purely matrices plus a few gains). Learned position embeddings to RoPE. Deleted the wpe table entirely. Instead of adding a position vector, RoPE rotates the query and key feature pairs by a position-dependent angle, so attention scores end up depending on the relative distance between tokens, not their absolute index. GELU MLP to SwiGLU. Replaced the Linear to GELU to Linear block with a gated FFN: one branch computes features, a second branch (through SiLU) decides how much of each passes, then they multiply and project down. Went with 4x width, so it’s a bigger model, not a param-matched swap. Deliberate: I care more about a stronger model here than a clean ablation, and I can spend the compute. What was actually hard: The swaps are each ~20 to 40 lines. The trap was RoPE. It’s the classic silent bug: get the pairing convention wrong between the cos/sin cache and the apply function and the model still trains fine, it just quietly underperforms and you never find out. So I wrote a unit test instead of trusting the loss curve: shift the whole sequence by k positions and assert the attention scores between the same token pairs are unchanged. Rotation invariance either holds or it doesn’t (like an odometer). Next QK-norm, untied embeddings + zero-init prWSD schedule. Then the actual point: benchmark the modernized model against the untouched GPT-2 baseline (Row 0) at a fixed token budget on FineWeb-Edu, and see which Then scale the frozen recipe to ~500M....
|
1792914540.4782085
|
1793778540.4782085
|
|
42528
|
SLASH by @Ippia | Stardance
|
Ippia
|
0
|
31.15
|
0
|
[]
|
[{"post_id": 75396, "ts": "202 [{"post_id": 75396, "ts": "2026-09-29T22:56:12Z", "hours": 3.8106, "text": "SLASH #10 - String player After more than a month, SLASH is back with plenty of work still to do and only 12 days left until the WRO! Today, I refined the overall aesthetics by applying the final color scheme and finally finishing the underside mechanism that plucks the strings using the small screen connected to the Raspberry Pi. All that remains is to complete the stand—which will hold the guitar upright and house all the electronics—and print everything out; then, the project will finally be ready for completion. Zagreb, here we come!"}, {"post_id": 50907, "ts": "2026-08-20T11:41:51Z", "hours": 3.8478, "text": "SLASH #9 - String Player I’ve adjusted the servos and linear actuators for each string based on the precise measurements needed for perfect playability; I’ve also started building the external housing, it looks pretty ugly right now, but the screen and various decorations are still missing (let’s just pretend to believe in it)."}, {"post_id": 50744, "ts": "2026-08-20T03:00:27Z", "hours": 3.4467, "text": "SLASH #8 - Guitar CAD remaking and string player I’ve finished the CAD model for the entire guitar, including the rest of the neck and the body, so I can get a full 1:1 view of the project. I also built a linear actuator from scratch for the MG90S servo used in the string-plucking mechanism; it works really well (I actually made a video of it but forgot to include it in the devlog lol) Now, I just need to finish the housing for the lower servos, adapt it to fit the Raspberry Pi screen, and complete the stand that holds the guitar upright while housing all the electronics."}, {"post_id": 49312, "ts": "2026-08-18T01:51:24Z", "hours": 1.8114, "text": "SLASH #7 - General adjustments I’ve made a few purely aesthetic adjustments to the system and loaded all the parts developed so far into Bambu Studio with the correct print settings to determine how much filament and how many hours of printing we’ll need (spoiler a lot)."}, {"post_id": 46620, "ts": "2026-08-14T00:26:13Z", "hours": 1.0506, "text": "SLASH #6 - Fret CAD Remaking I’ve also finished the mount for attaching the servo system to the guitar neck and made a few general adjustments; the first version of the upper section is now completely finished. Now it’s time for the lower section, the part that plays the strings, which should (in theory) be simpler to build."}, {"post_id": 46225, "ts": "2026-08-13T09:49:10Z", "hours": 7.8544, "text": "SLASH #5 - Fret CAD Remaking I’ve finished the first version of the servo housing unit. I aligned each servo individually to ensure the best possible positioning for pressing the keys. I built a sliding-tray enclosure system: the outer casing opens, allowing the entire assembly of servos to be slid out for maintenance or adjustments. I also created an alternative servo configuration to allow for stacking units on top of one another; I simply extended the piston and its travel range. The next step is to create a magnetic mount to attach the system to the guitar neck, and then to revamp the lower section on the guitar body that plays the strings."}, {"post_id": 46080, "ts": "2026-08-13T01:08:15Z", "hours": 3.7983, "text": "SLASH #4 - Fret CAD Remaking I have, I believe definitively (I hope), completed the connecting-rod-and-crank system for pressing the keys using MG90S servos. It was much more complicated than expected due to the precise, millimeter-scale measurements, but I managed it! Now “all” that remains is to adjust all the servos on the guitar’s 36 keys and build the support housing around them."}, {"post_id": 45536, "ts": "2026-08-12T02:50:53Z", "hours": 3.0375, "text": "SLASH #3 - Fret CAD Remaking I’ve started working on the new key-actuation system; the previous version used electromagnetic solenoids that didn’t generate enough force and were very noisy, so I decided to switch to MG90S servos using a desmodromic cam mechanism. I’ve finished the first version of the servo assembly, but it’s MASSIVE, and I haven’t yet tested whether it actually works in practice. Tomorrow, I plan to continue laying out the servos on the guitar fretboard and running some tests with the initial 3D printed parts."}, {"post_id": 45436, "ts": "2026-08-11T21:32:38Z", "hours": 1.4328, "text": "SLASH #2 - Guitar CAD Remaking I have finished the guitar neck by adding the frets and strings. Installing the strings was tricky because they vary in both height and curvature and they are not perpendicular to the neck. The next step will be to develop the desmodromic cam system to actuate the strings using MG90S servos and to mount all the new motors in their correct positions."}, {"post_id": 41015, "ts": "2026-08-04T22:16:43Z", "hours": 1.0639, "text": "SLASH #1 - Guitar CAD Remaking I remade the guitar neck; the measurements are all irregular, so I used cardboard to create templates to follow. I’m not entirely convinced by the result, but it should work. I’ve mapped out the measurements up to the seventh fret and think I’ll stop there, that’s all we’ll need for our project."}]...
|
Title: SLASH by @Ippia | Stardance
Devlogs:
SLASH Title: SLASH by @Ippia | Stardance
Devlogs:
SLASH #1 - Guitar CAD Remaking I remade the guitar neck; the measurements are all irregular, so I used cardboard to create templates to follow. I’m not entirely convinced by the result, but it should work. I’ve mapped out the measurements up to the seventh fret and think I’ll stop there, that’s all we’ll need for our project.
SLASH #2 - Guitar CAD Remaking I have finished the guitar neck by adding the frets and strings. Installing the strings was tricky because they vary in both height and curvature and they are not perpendicular to the neck. The next step will be to develop the desmodromic cam system to actuate the strings using MG90S servos and to mount all the new motors in their correct positions.
SLASH #3 - Fret CAD Remaking I’ve started working on the new key-actuation system; the previous version used electromagnetic solenoids that didn’t generate enough force and were very noisy, so I decided to switch to MG90S servos using a desmodromic cam mechanism. I’ve finished the first version of the servo assembly, but it’s MASSIVE, and I haven’t yet tested whether it actually works in practice. Tomorrow, I plan to continue laying out the servos on the guitar fretboard and running some tests with the initial 3D printed parts.
SLASH #4 - Fret CAD Remaking I have, I believe definitively (I hope), completed the connecting-rod-and-crank system for pressing the keys using MG90S servos. It was much more complicated than expected due to the precise, millimeter-scale measurements, but I managed it! Now “all” that remains is to adjust all the servos on the guitar’s 36 keys and build the support housing around them.
SLASH #5 - Fret CAD Remaking I’ve finished the first version of the servo housing unit. I aligned each servo individually to ensure the best possible positioning for pressing the keys. I built a sliding-tray enclosure system: the outer casing opens, allowing the entire assembly of servos to be slid out for maintenance or adjustments. I also created an alternative servo configuration to allow for stacking units on top of one another; I simply extended the piston and its travel range. The next step is to create a magnetic mount to attach the system to the guitar neck, and then to revamp the lower section on the guitar body that plays the strings.
SLASH #6 - Fret CAD Remaking I’ve also finished the mount for attaching the servo system to the guitar neck and made a few general adjustments; the first version of the upper section is now completely finished. Now it’s time for the lower section, the part that plays the strings, which should (in theory) be simpler to build.
SLASH #7 - General adjustments I’ve made a few purely aesthetic adjustments to the system and loaded all the parts developed so far into Bambu Studio with the correct print settings to determine how much filament and how many hours of printing we’ll need (spoiler a lot).
SLASH #8 - Guitar CAD remaking and string player I’ve finished the CAD model for the entire guitar, including the rest of the neck and the body, so I can get a full 1:1 view of the project. I also built a linear actuator from scratch for the MG90S servo used in the string-plucking mechanism; it works really well (I actually made a video of it but forgot to include it in the devlog lol) Now, I just need to finish the housing for the lower servos, adapt it to fit the Raspberry Pi screen, and complete the stand that holds the guitar upright while housing all the electronics.
SLASH #9 - String Player I’ve adjusted the servos and linear actuators for each string based on the precise measurements needed for perfect playability; I’ve also started building the external housing, it looks pretty ugly right now, but the screen and various decorations are still missing (let’s just pretend to believe in it).
SLASH #10 - String player After more than a month, SLASH is back with plenty of work still to do and only 12 days left until the WRO! Today, I refined the overall aesthetics by applying the final color scheme and finally finishing the underside mechanism that plucks the strings using the small screen connected to the Raspberry Pi. All that remains is to complete the stand—which will hold the guitar upright and house all the electronics—and print everything out; then, the project will finally be ready for completion. Zagreb, here we come!...
|
1793180957.088954
|
1793785757.088954
|
|
42650
|
esp-pod by @krisander | Stardance
|
krisander
|
1
|
31.15
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-14T13:06:01Z", "hours": 23.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is a retro themed mp3 player built around the esp32-wroom-1, this is version 1.3, this verson can play audio, browse through songs, add favorite songs, remane songs, artists and setsong duration. It has an inbuild keyboard wich makes it easy to type and save songs.", "repo": "https://github.com/krisander11/esp-pod", "demo": ""}]...
|
[{"post_id": 69104, "ts": "202 [{"post_id": 69104, "ts": "2026-09-16T11:39:39Z", "hours": 5.6508, "text": "i finished all the PCB Editing in about 5 hours!! I’m gonna put the PCB files on github soon. I”ll also send it for reshipping… hopefully it will be accepted."}, {"post_id": 68526, "ts": "2026-09-15T08:24:22Z", "hours": 0.7842, "text": "i fixed the schematics of the board. I added switches and labeled everything. I ran through the tests and it passed perfect."}, {"post_id": 68000, "ts": "2026-09-14T11:04:35Z", "hours": 1.7142, "text": "I found out i have to create a pcb so I’m doing it."}, {"post_id": 46367, "ts": "2026-08-13T15:19:17Z", "hours": 1.2575, "text": "I just dropped version 1.3 of the esp-pod on github , go check it out!"}, {"post_id": 45843, "ts": "2026-08-12T15:56:37Z", "hours": 1.5375, "text": "I’m currently fixing the keyboard navigation, and adding code to rename artists as well. I will update agian after fixing it."}, {"post_id": 45658, "ts": "2026-08-12T09:15:01Z", "hours": 2.0997, "text": "just uploaded build montage on lapse go check it out"}, {"post_id": 44706, "ts": "2026-08-10T17:23:29Z", "hours": 0.6858, "text": "I added code so that i can rename songs through the player but i have to clike abt 52 times per letter becaue the screen size and buttons are limited . If you have any ideas on optmizing the typing please feel free to suggest it in the comments!"}, {"post_id": 44670, "ts": "2026-08-10T16:17:09Z", "hours": 2.1997, "text": "I finished ver1.3, currenty debugging errors in ver1.3… Ill do a timlapse soon stay tuned for the hardware build montage!"}, {"post_id": 44073, "ts": "2026-08-09T16:25:57Z", "hours": 1.0806, "text": "ok so the project works but i complete forgt to add the logic part of renaming songs etc, i deleted about 200 lines of code to update it. ill will post a breadboard prototype after fixing this version of code"}, {"post_id": 43426, "ts": "2026-08-08T17:38:25Z", "hours": 1.0017, "text": "im fixing a few errors it the menu like not being able to rename songs and fixing ui freezing and audio glitches, I got the base working and will start on bluetooth soon!"}, {"post_id": 43266, "ts": "2026-08-08T12:59:00Z", "hours": 0.9897, "text": "I finally got all the errors fixed! I’m going to flash and test this version and then add bluetooth! I’ll publish this version on github after that. :-)"}, {"post_id": 43230, "ts": "2026-08-08T11:33:31Z", "hours": 3.3317, "text": "i started working on the settings part of the code . in getting hit with a lot of errors but im combing through the code and finding manyyy errors! ill update soon."}, {"post_id": 42690, "ts": "2026-08-07T15:28:31Z", "hours": 1.0631, "text": "currently writing the track selection code! Its throwing soooo many errors at me :-("}, {"post_id": 42598, "ts": "2026-08-07T12:41:23Z", "hours": 2.3325, "text": "The display of my laptop broke :-( I have been coding uisng an external 7 inch monitor… These curly brackets are confusing me so much! But ill never stop this project till im done. Currently am rewriting the code for the menu and how to interact with it, i will andd bluetooth once im done with this base model!"}, {"post_id": 42120, "ts": "2026-08-06T18:12:52Z", "hours": 1.3767, "text": "i started rewriting the code so i can use little fs to save song names to the esp32, as the sd card is going to be directly mounted to the dfplayer and there is no other way to save or read data form the sd using the dfplayermini. I created a new settings menu as wel."}, {"post_id": 40268, "ts": "2026-08-03T18:02:27Z", "hours": 4.2856, "text": "I spent so much time overthinking how to debug the 53 errors i got, turns out it was because of a semicolon…. btw this is a retro themed esp32 music play, because way too much stuff is digitalized and music shouldent be filled with ads!"}]...
|
Title: esp-pod by @krisander | Stardance
Devlogs: Title: esp-pod by @krisander | Stardance
Devlogs:
I spent so much time overthinking how to debug the 53 errors i got, turns out it was because of a semicolon…. btw this is a retro themed esp32 music play, because way too much stuff is digitalized and music shouldent be filled with ads!
i started rewriting the code so i can use little fs to save song names to the esp32, as the sd card is going to be directly mounted to the dfplayer and there is no other way to save or read data form the sd using the dfplayermini. I created a new settings menu as wel.
The display of my laptop broke :-( I have been coding uisng an external 7 inch monitor… These curly brackets are confusing me so much! But ill never stop this project till im done. Currently am rewriting the code for the menu and how to interact with it, i will andd bluetooth once im done with this base model!
currently writing the track selection code! Its throwing soooo many errors at me :-(
i started working on the settings part of the code . in getting hit with a lot of errors but im combing through the code and finding manyyy errors! ill update soon.
I finally got all the errors fixed! I’m going to flash and test this version and then add bluetooth! I’ll publish this version on github after that. :-)
im fixing a few errors it the menu like not being able to rename songs and fixing ui freezing and audio glitches, I got the base working and will start on bluetooth soon!
ok so the project works but i complete forgt to add the logic part of renaming songs etc, i deleted about 200 lines of code to update it. ill will post a breadboard prototype after fixing this version of code
I finished ver1.3, currenty debugging errors in ver1.3… Ill do a timlapse soon stay tuned for the hardware build montage!
I added code so that i can rename songs through the player but i have to clike abt 52 times per letter becaue the screen size and buttons are limited . If you have any ideas on optmizing the typing please feel free to suggest it in the comments!
just uploaded build montage on lapse go check it out
I’m currently fixing the keyboard navigation, and adding code to rename artists as well. I will update agian after fixing it.
I just dropped version 1.3 of the esp-pod on github , go check it out!
I found out i have to create a pcb so I’m doing it.
i fixed the schematics of the board. I added switches and labeled everything. I ran through the tests and it passed perfect.
i finished all the PCB Editing in about 5 hours!! I’m gonna put the PCB files on github soon. I”ll also send it for reshipping… hopefully it will be accepted.
Ships:
This is a retro themed mp3 player built around the esp32-wroom-1, this is version 1.3, this verson can play audio, browse through songs, add favorite songs, remane songs, artists and setsong duration. It has an inbuild keyboard wich makes it easy to type and save songs....
|
1793119642.9451017
|
1793206042.9451017
|
|
64516
|
Programme ERIZON by @nejenabinupa | Stardance
|
nejenabinupa
|
0
|
31.12
|
0
|
[]
|
[{"post_id": 75327, "ts": "202 [{"post_id": 75327, "ts": "2026-09-29T19:17:37Z", "hours": 1.7819, "text": "Did the final stuff and it’s ready"}, {"post_id": 74832, "ts": "2026-09-28T12:15:02Z", "hours": 7.9736, "text": "i added textures and martials to the ship and looking good so far need to make sum things and all good"}, {"post_id": 74044, "ts": "2026-09-26T16:14:11Z", "hours": 14.6467, "text": "i make a space ship thing and its look good so far"}, {"post_id": 72200, "ts": "2026-09-22T13:24:15Z", "hours": 6.7183, "text": "Make the earth modle using earth texture NASA have"}]...
|
Title: Programme ERIZON by @nejenabinupa | Stardan Title: Programme ERIZON by @nejenabinupa | Stardance
Devlogs:
Make the earth modle using earth texture NASA have
i make a space ship thing and its look good so far
i added textures and martials to the ship and looking good so far need to make sum things and all good
Did the final stuff and it’s ready...
|
1793065665.668396
|
1793670465.668396
|
|
54596
|
PianoOS by @niejestemprawdziwyy | Stardance
|
niejestemprawdziwyy
|
1
|
31.11
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-03T08:54:23Z", "hours": 14.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "WebOS BUT you can play piano. PianoOS also allows you to run a metronome as an app and make some hehe notes The most challenging thing was definitely the animation in the beggining, like hell nah, i must have spent like 6h just on a 5 second cutscene. Still tho, I’m happy with how it looks, and even happier how it can look in the future.", "repo": "https://github.com/Korsor2137/PianoOS", "demo": "https://raw.githack.com/Korsor2137/PianoOS/main/index.html"}]...
|
[{"post_id": 75696, "ts": "202 [{"post_id": 75696, "ts": "2026-09-30T19:34:29Z", "hours": 7.9089, "text": "Heck yeah! Finished all the rewriting, added a few new things blah blah blah Nobody cares! The important thing is that i’ve rewritten all css and most js, fixed many if not all bugs, so it’s foolproof. Yet another alt settings to play (in config). Metronome also sound more realistic. The whole thing should, and i mean should work better and faster. It looks better, sustain pedal fully works etc. etc. ANYWAY TEST IT HERE: https://raw.githack.com/Korsor2137/PianoOS/main/index.html"}, {"post_id": 69175, "ts": "2026-09-16T15:12:47Z", "hours": 0.5994, "text": "Made new controls for piano, so it’s possible to play more sounds with keyboard itself left-new, right-old However i’m still leaving them in the comments if for some reason someone wanted to use them I suppose i should make these devlogs a bit more often, the previous one was like 8h gap lol (q: 45 means that q is A4, i: 57 is A5, the rest most people can figure out themselves)"}, {"post_id": 68766, "ts": "2026-09-15T18:32:55Z", "hours": 8.6006, "text": "Made a new, better banner and rewriting a lot of things I was told that there was too much ai used, so i marked clearly at what part ai was used and rewritten the other parts. Added settings saving and reading it, made the samples load faster and added a loading percentage, deleted a particle animation so it doesn’t lag that much on mobiles, made the piano look cleaner (deleted some nametags), added sustain on spacebar, added config section in the code, readded old and added new unneccesary comments, fixed a bug with music either glitching out or playing after refreshing and fixed a few esthetic choices, probably unnoticable, but color changes and also…. plaing still dre is way easier now, as B3 can now be played with q, sooooo you just go ‘adh’ a few times, then another few of ‘qdh’ and some ‘qsg’. use spacebar for sustain and mouse for bass notes and voila! also i made it possible to name the workspace in the web itself still, i have to rewrite most of css, as some parts are unneccesary or ai and some are well, lacking. also, fixed the piano sample loading, just too lazy to make a new screenshot also, i overuse the word ‘also’"}, {"post_id": 60719, "ts": "2026-09-03T08:45:08Z", "hours": 5.8211, "text": "Finally, I finished my WebOS, or did I? I want to continue working on it as WebOS 2. I’m quite proud of how it looks now. But anyway, here’s the Readme: PianoOSA WebOS, which has notepad and metronome apps and fully playable 88 key piano. Try it here : https://raw.githack.com/Korsor2137/PianoOS/main/index.html Note: it may take a few seconds to prepare all the piano sounds How to run: Yeah, just click the link. Or download it and then run index.html Features: -Full 88 key virtual piano, which you can play using mouse, with your pc keyboard (-a- to -’- keys, press capslock to change octaves to lower) or by connecting your own MIDI piano; -Keys glow when you play the piano; -A simple notepad and a metronome which when you minimalize will remember their location adn when they’re closed, their position resets; -A button to hide the piano interface; -Volume settings which you can change to your liking. Author’s notes: And why did I decide to make this? Well, I saw how on the WebOS missions there was a lot of awesome stuff, the same main concept and yet they were all so different. So, since I like piano, decided to implement it :D I plan on making it more customizable in the future, such as changing the background color, or maybe the whole stylistic, making the top right buttons actually work instead of just being a decoration, adding maybe a few piano sounds, and of course more apps so it actually feels like an actual OS. Also, notice a little reference at the title screen? Full copyright of the sound samples I used: MIT LicenseCopyright (c) 2020 Liam LeePermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE."}, {"post_id": 59229, "ts": "2026-08-31T22:01:49Z", "hours": 3.7533, "text": "I made the background and keyboard for my WebOS. Not gonna lie, used AI here with canvas, also found nice tutorial so i might do these particles that fly above when playing piano. i’m quite proud of making these glowing keys, well those are actually shadows but doesn’t matter. Also: made these names for keys, i intend for them to be toggable tho; made a button to hide/show piano, i think it looks good when its fully hidden and only the lights remain; and it’s now possible to control the piano with a pc keyboard, using “ a “ to “ ’ “ keys, black keys are the keys above like “ w “ and “ e “, and to change the octave with capslock; it’s also possible to control them with mouse For my plans, i next intend to make some actual apps, of course including notebook, but also metronome and midi recording. From other things i want to implement shortcuts, so when you press A0 and C4, for example, virtual keyboard hides or shows. Last thing is to make a mouse setting so when a note is pressed, until you stop pressing it you can move it to any position, while still playing that note (Toggable, so that it’s also possible to scale the whole piano really fast). I don’t intend to implement everything now, maybe after i make the first few apps and working piano i’ll ship it as WebOS 1, and then continue as WebOS 2 Oh, and should i name the keys that are possible to play with pc keyboard or maybe should i simply add a short guide of how it works and also maybe it would make sense to add actual sounds lol Anyways, feedback and critique is welcome, encouraged even, so i know what would actually be a good feature"}, {"post_id": 56764, "ts": "2026-08-28T17:34:02Z", "hours": 4.6208, "text": "Since this is my first post i’ll explain what my project even is about. My goal is to create a WebOS that you can control with a midi piano, where i want to then implement some usefull functions for pianists, we’ll see how far can i go with my amateur skills. I’ve coded bigger part of html already. Currently though im having some problems with how it looks and the whole animation. I seriously need to optimize it because daamnn its laggy now. Also, what a coincidence with the colors of those seven sou- i mean balls of light."}]...
|
Title: PianoOS by @niejestemprawdziwyy | Stardance Title: PianoOS by @niejestemprawdziwyy | Stardance
Devlogs:
Since this is my first post i’ll explain what my project even is about. My goal is to create a WebOS that you can control with a midi piano, where i want to then implement some usefull functions for pianists, we’ll see how far can i go with my amateur skills. I’ve coded bigger part of html already. Currently though im having some problems with how it looks and the whole animation. I seriously need to optimize it because daamnn its laggy now. Also, what a coincidence with the colors of those seven sou- i mean balls of light.
I made the background and keyboard for my WebOS. Not gonna lie, used AI here with canvas, also found nice tutorial so i might do these particles that fly above when playing piano. i’m quite proud of making these glowing keys, well those are actually shadows but doesn’t matter. Also: made these names for keys, i intend for them to be toggable tho; made a button to hide/show piano, i think it looks good when its fully hidden and only the lights remain; and it’s now possible to control the piano with a pc keyboard, using “ a “ to “ ’ “ keys, black keys are the keys above like “ w “ and “ e “, and to change the octave with capslock; it’s also possible to control them with mouse For my plans, i next intend to make some actual apps, of course including notebook, but also metronome and midi recording. From other things i want to implement shortcuts, so when you press A0 and C4, for example, virtual keyboard hides or shows. Last thing is to make a mouse setting so when a note is pressed, until you stop pressing it you can move it to any position, while still playing that note (Toggable, so that it’s also possible to scale the whole piano really fast). I don’t intend to implement everything now, maybe after i make the first few apps and working piano i’ll ship it as WebOS 1, and then continue as WebOS 2 Oh, and should i name the keys that are possible to play with pc keyboard or maybe should i simply add a short guide of how it works and also maybe it would make sense to add actual sounds lol Anyways, feedback and critique is welcome, encouraged even, so i know what would actually be a good feature
Finally, I finished my WebOS, or did I? I want to continue working on it as WebOS 2. I’m quite proud of how it looks now. But anyway, here’s the Readme: PianoOSA WebOS, which has notepad and metronome apps and fully playable 88 key piano. Try it here : https://raw.githack.com/Korsor2137/PianoOS/main/index.html Note: it may take a few seconds to prepare all the piano sounds How to run: Yeah, just click the link. Or download it and then run index.html Features: -Full 88 key virtual piano, which you can play using mouse, with your pc keyboard (-a- to -’- keys, press capslock to change octaves to lower) or by connecting your own MIDI piano; -Keys glow when you play the piano; -A simple notepad and a metronome which when you minimalize will remember their location adn when they’re closed, their position resets; -A button to hide the piano interface; -Volume settings which you can change to your liking. Author’s notes: And why did I decide to make this? Well, I saw how on the WebOS missions there was a lot of awesome stuff, the same main concept and yet they were all so different. So, since I like piano, decided to implement it :D I plan on making it more customizable in the future, such as changing the background color, or maybe the whole stylistic, making the top right buttons actually work instead of just being a decoration, adding maybe a few piano sounds, and of course more apps so it actually feels like an actual OS. Also, notice a little reference at the title screen? Full copyright of the sound samples I used: MIT LicenseCopyright (c) 2020 Liam LeePermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Made a new, better banner and rewriting a lot of things I was told that there was too much ai used, so i marked clearly at what part ai was used and rewritten the other parts. Added settings saving and reading it, made the samples load faster and added a loading percentage, deleted a particle animation so it doesn’t lag that much on mobiles, made the piano look cleaner (deleted some nametags), added sustain on spacebar, added config section in the code, readded old and added new unneccesary comments, fixed a bug with music either glitching out or playing after refreshing and fixed a few esthetic choices, probably unnoticable, but color changes and also…. plaing still dre is way easier now, as B3 can now be played with q, sooooo you just go ‘adh’ a few times, then another few of ‘qdh’ and some ‘qsg’. use spacebar for sustain and mouse for bass notes and voila! also i made it possible to name the workspace in the web itself still, i have to rewrite most of css, as some parts are unneccesary or ai and some are well, lacking. also, fixed the piano sample loading, just too lazy to make a new screenshot also, i overuse the word ‘also’
Made new controls for piano, so it’s possible to play more sounds with keyboard itself left-new, right-old However i’m still leaving them in the comments if for some reason someone wanted to use them I suppose i should make these devlogs a bit more often, the previous one was like 8h gap lol (q: 45 means that q is A4, i: 57 is A5, the rest most people can figure out themselves)
Heck yeah! Finished all the rewriting, added a few new things blah blah blah Nobody cares! The important thing is that i’ve rewritten all css and most js, fixed many if not all bugs, so it’s foolproof. Yet another alt settings to play (in config). Metronome also sound more realistic. The whole thing should, and i mean should work better and faster. It looks better, sustain pedal fully works etc. etc. ANYWAY TEST IT HERE: https://raw.githack.com/Korsor2137/PianoOS/main/index.html
Ships:
WebOS BUT you can play piano. PianoOS also allows you to run a metronome as an app and make some hehe notes The most challenging thing was definitely the animation in the beggining, like hell nah, i must have spent like 6h just on a 5 second cutscene. Still tho, I’m happy with how it looks, and even happier how it can look in the future....
|
1793087665.648731
|
1793174065.648731
|
|
51759
|
Custom Mouse by @sharc | Stardance
|
sharc
|
1
|
31.09
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-24T23:23:35Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a DIY Custom Mouse from scratch using a PMW3389 sensor and an Arduino Pro Micro AtMega32u4. There aren’t many similar projects to help understand how to interface with the sensor. This is my first electronics project and I am proud that I have managed to complete this with no prior skills or experience. I have learned a lot from this project; PCB design, soldering, Arduino and library coding. If you want to test the project, you must be good at small surface mount component soldering (the resistors and capacitors are 0805). There is instructions on the readme to build the mouse. Feel free to message me on slack if you have any questions or need help with anything ( @sharcc ). Current issues: No shell Mouse switches are backwards or they wont work Lens has trouble fitting. Scroll wheel is awkward to use", "repo": "https://github.com/aSharcc/PMW3389-Arduino-Custom-Mouse/", "demo": ""}]...
|
[{"post_id": 61079, "ts": "202 [{"post_id": 61079, "ts": "2026-09-03T19:56:43Z", "hours": 3.6069, "text": "Devlog 31/08/2026 to 03/09/2026 What did I do? Updated PCB v2 and v3 according to DFM review Updated PCB v2 and v3 to increase size of lens cutout for easier installation Updated Readme and BOM to accommodate v2 and v3 Created 3d printing files Printed out new top shell What’s next? Center sensor on PCB v3 Create shell v3 Order PCB for v2 (wired) and v3 (wireless) Waiting for ship to be reviewed for funding"}, {"post_id": 58515, "ts": "2026-08-30T23:03:07Z", "hours": 2.1667, "text": "Devlog 30/08/2026 What did I do? Updated shell v2 (Changed click mechanism) Printed new shell v2 What’s next? Create shell for v3 (wireless) Order PCB for v2 (wired) and v3 (wireless) Waiting for ship to be verified for funding"}, {"post_id": 57548, "ts": "2026-08-29T18:41:53Z", "hours": 4.5325, "text": "Devlog 29/08/2026 What did I do? Created PCB v3 (Wireless) Cleaned up GitHub repo Exported PCB files Created new release on GitHub What’s next? (Wating for ship to be completed for funding) Order PCBs Order PMW3389 sensors Create shell for v3"}, {"post_id": 56936, "ts": "2026-08-28T23:21:46Z", "hours": 3.1156, "text": "Devlog 28/08/2026 What did I do? Assembled Mouse Iterated Shell v2 Design (Smaller USB cable cutout) Exported PCB files Updated GitHub repo file structure Updated README Created BOM.md and BOM.csv Created instructions for mouse What’s next? Complete PCB v2 (Wating for funding from stardance) Order PCBs Order PMW3389 sensors"}, {"post_id": 56267, "ts": "2026-08-27T23:27:39Z", "hours": 5.0208, "text": "Devlog 27/08/2026 Pt. 2 What did I do? Completed Shell v2 Printed Shell v2 What’s left? Test Shell v2 Assembly Order Parts for Mouse v2 (PMW3389 Sensors) Order PCBs (Waiting for funding)"}, {"post_id": 55514, "ts": "2026-08-27T12:40:22Z", "hours": 2.5544, "text": "Devlog 27/08/2026 Pt.1 What did I do? Completed Shell v1 Completed PCB v2 Assembled and tested mouse v1 Started Work on Shell v2 What’s next? Complete shell v2 Order PCB v2 Print shell v2 Assemble and test shell v2"}, {"post_id": 55252, "ts": "2026-08-26T22:20:31Z", "hours": 0.2556, "text": "Devlog 26/08/2026 What did I do? Continued 3d modeling mouse shell Printed shell then tested and iterated What do I need to do? Troubleshoot mouse Create hole for USB wire in shell"}, {"post_id": 54807, "ts": "2026-08-25T22:57:35Z", "hours": 5.0772, "text": "Devlog 25/08/2026. Pt.2 What did I do?: Created shell 3d model and iterated the design What’s next? 3d Print the mosue shell test mouse shell iterate design finish pcb improvments (new scroll wheel)"}, {"post_id": 54417, "ts": "2026-08-25T12:49:46Z", "hours": 3.7608, "text": "Devlog 25/08/2026. Pt.1 What did I do?: Created PCB v2 featuring silkscreen logo (Fixed backwards mouse switches, lens clearance issues.) updated credits started 3d modeling shell. What’s next? finish 3d modeling mouse shell"}, {"post_id": 54132, "ts": "2026-08-24T23:12:07Z", "hours": 0.7011, "text": "Added video demo ready to ship"}, {"post_id": 54095, "ts": "2026-08-24T21:43:12Z", "hours": 0.3456, "text": "Devlog up to 24/08/2026 What did I do? Research Created PCB v1 Created firmware Tested firmware and PCB What’s next? Create, test and iterate shell Create PCB v2"}]...
|
Title: Custom Mouse by @sharc | Stardance
Devlogs Title: Custom Mouse by @sharc | Stardance
Devlogs:
Devlog up to 24/08/2026 What did I do? Research Created PCB v1 Created firmware Tested firmware and PCB What’s next? Create, test and iterate shell Create PCB v2
Added video demo ready to ship
Devlog 25/08/2026. Pt.1 What did I do?: Created PCB v2 featuring silkscreen logo (Fixed backwards mouse switches, lens clearance issues.) updated credits started 3d modeling shell. What’s next? finish 3d modeling mouse shell
Devlog 25/08/2026. Pt.2 What did I do?: Created shell 3d model and iterated the design What’s next? 3d Print the mosue shell test mouse shell iterate design finish pcb improvments (new scroll wheel)
Devlog 26/08/2026 What did I do? Continued 3d modeling mouse shell Printed shell then tested and iterated What do I need to do? Troubleshoot mouse Create hole for USB wire in shell
Devlog 27/08/2026 Pt.1 What did I do? Completed Shell v1 Completed PCB v2 Assembled and tested mouse v1 Started Work on Shell v2 What’s next? Complete shell v2 Order PCB v2 Print shell v2 Assemble and test shell v2
Devlog 27/08/2026 Pt. 2 What did I do? Completed Shell v2 Printed Shell v2 What’s left? Test Shell v2 Assembly Order Parts for Mouse v2 (PMW3389 Sensors) Order PCBs (Waiting for funding)
Devlog 28/08/2026 What did I do? Assembled Mouse Iterated Shell v2 Design (Smaller USB cable cutout) Exported PCB files Updated GitHub repo file structure Updated README Created BOM.md and BOM.csv Created instructions for mouse What’s next? Complete PCB v2 (Wating for funding from stardance) Order PCBs Order PMW3389 sensors
Devlog 29/08/2026 What did I do? Created PCB v3 (Wireless) Cleaned up GitHub repo Exported PCB files Created new release on GitHub What’s next? (Wating for ship to be completed for funding) Order PCBs Order PMW3389 sensors Create shell for v3
Devlog 30/08/2026 What did I do? Updated shell v2 (Changed click mechanism) Printed new shell v2 What’s next? Create shell for v3 (wireless) Order PCB for v2 (wired) and v3 (wireless) Waiting for ship to be verified for funding
Devlog 31/08/2026 to 03/09/2026 What did I do? Updated PCB v2 and v3 according to DFM review Updated PCB v2 and v3 to increase size of lens cutout for easier installation Updated Readme and BOM to accommodate v2 and v3 Created 3d printing files Printed out new top shell What’s next? Center sensor on PCB v3 Create shell v3 Order PCB for v2 (wired) and v3 (wireless) Waiting for ship to be reviewed for funding
Ships:
I made a DIY Custom Mouse from scratch using a PMW3389 sensor and an Arduino Pro Micro AtMega32u4. There aren’t many similar projects to help understand how to interface with the sensor. This is my first electronics project and I am proud that I have managed to complete this with no prior skills or experience. I have learned a lot from this project; PCB design, soldering, Arduino and library coding. If you want to test the project, you must be good at small surface mount component soldering (the resistors and capacitors are 0805). There is instructions on the readme to build the mouse. Feel free to message me on slack if you have any questions or need help with anything ( @sharcc ). Current issues: No shell Mouse switches are backwards or they wont work Lens has trouble fitting. Scroll wheel is awkward to use...
|
1793123339.120353
|
1793209739.120353
|
|
55410
|
UHBadge by @__grdev | Stardance
|
__grdev
|
0
|
31.06
|
0
|
[]
|
[{"post_id": 72158, "ts": "202 [{"post_id": 72158, "ts": "2026-09-22T10:31:34Z", "hours": 1.3675, "text": "Wrote the BOM."}, {"post_id": 72132, "ts": "2026-09-22T08:38:53Z", "hours": 1.6786, "text": "Fixed the routes."}, {"post_id": 71648, "ts": "2026-09-21T07:32:42Z", "hours": 3.3397, "text": "Added confirm button. Moved the NFC tag. Fixed the design. Wrote the settings page of the ui."}, {"post_id": 69998, "ts": "2026-09-18T07:25:33Z", "hours": 2.7803, "text": "Wrote the drivers for the SD, the wifi (will be used mainly for the GitHub APIs), the bluetooth (to recognize other UHBadges). Added the sd file template and an image-converter script for the main badge screen. Wrote the dynamic main badge screen with badge data loading from the sd."}, {"post_id": 67913, "ts": "2026-09-14T06:52:06Z", "hours": 1.6153, "text": "Wrote the most low-level part of the firmware (drivers for the e-ink display, buttons input handling, nfc functions). Updated the README."}, {"post_id": 66580, "ts": "2026-09-12T12:44:14Z", "hours": 1.5725, "text": "Finished the design. Started writing the firmware."}, {"post_id": 65920, "ts": "2026-09-11T11:51:09Z", "hours": 0.6428, "text": "Finished the design."}, {"post_id": 65296, "ts": "2026-09-10T10:34:39Z", "hours": 2.2742, "text": "Finished the connections and made some graphics. Started writing the first lines of the firmware."}, {"post_id": 64694, "ts": "2026-09-09T09:35:04Z", "hours": 0.7842, "text": "Fixed some little graphical details. Started writing the first rows of the firmware."}, {"post_id": 64104, "ts": "2026-09-08T09:30:27Z", "hours": 1.5333, "text": "Added the microSD card slot. Moved the SW pins. Removed two expansion pins. Added some graphical designs."}, {"post_id": 63465, "ts": "2026-09-07T10:27:01Z", "hours": 1.5667, "text": "Added the Pi Radio Module 2."}, {"post_id": 62865, "ts": "2026-09-06T12:15:21Z", "hours": 1.7308, "text": "Remade the whole design"}, {"post_id": 62193, "ts": "2026-09-05T13:43:59Z", "hours": 1.7333, "text": "Started working on the design."}, {"post_id": 61484, "ts": "2026-09-04T12:51:31Z", "hours": 1.5408, "text": "UHBadge - Finished the connections between the components."}, {"post_id": 60767, "ts": "2026-09-03T11:07:38Z", "hours": 1.2833, "text": "Connected the components together."}, {"post_id": 60222, "ts": "2026-09-02T13:43:20Z", "hours": 1.75, "text": "UHBadge Battery Port Placement, finished the recharge system, placed the mounting holes, started filling the areas and connecting the components."}, {"post_id": 59609, "ts": "2026-09-01T15:01:17Z", "hours": 1.5978, "text": "RP2350 Support components placement, USB-C connection and NFC component placement."}, {"post_id": 58827, "ts": "2026-08-31T12:31:10Z", "hours": 1.3167, "text": "UHBadge RP2350 Placement and e-ink display design."}, {"post_id": 56606, "ts": "2026-08-28T12:58:41Z", "hours": 0.9542, "text": "Added the 2.9” e-ink display to the badge. Placed the buttons (up/down/left/right) and designed the arrows for the buttons."}]...
|
Title: UHBadge by @__grdev | Stardance
Devlogs:
A Title: UHBadge by @__grdev | Stardance
Devlogs:
Added the 2.9” e-ink display to the badge. Placed the buttons (up/down/left/right) and designed the arrows for the buttons.
UHBadge RP2350 Placement and e-ink display design.
RP2350 Support components placement, USB-C connection and NFC component placement.
UHBadge Battery Port Placement, finished the recharge system, placed the mounting holes, started filling the areas and connecting the components.
Connected the components together.
UHBadge - Finished the connections between the components.
Started working on the design.
Remade the whole design
Added the Pi Radio Module 2.
Added the microSD card slot. Moved the SW pins. Removed two expansion pins. Added some graphical designs.
Fixed some little graphical details. Started writing the first rows of the firmware.
Finished the connections and made some graphics. Started writing the first lines of the firmware.
Finished the design.
Finished the design. Started writing the firmware.
Wrote the most low-level part of the firmware (drivers for the e-ink display, buttons input handling, nfc functions). Updated the README.
Wrote the drivers for the SD, the wifi (will be used mainly for the GitHub APIs), the bluetooth (to recognize other UHBadges). Added the sd file template and an image-converter script for the main badge screen. Wrote the dynamic main badge screen with badge data loading from the sd.
Added confirm button. Moved the NFC tag. Fixed the design. Wrote the settings page of the ui.
Fixed the routes.
Wrote the BOM....
|
1793162931.6178334
|
1793767731.6178334
|
|
7724
|
EndeR-Theta by @Rithik | Stardance
|
Rithik
|
0
|
31.04
|
0
|
[]
|
[{"post_id": 62697, "ts": "202 [{"post_id": 62697, "ts": "2026-09-06T05:49:21Z", "hours": 1.5194, "text": "The GitHub is fully updated"}, {"post_id": 60063, "ts": "2026-09-02T05:43:07Z", "hours": 0.5333, "text": "Github Updates - Part 2 Added STEP and STL files of the Z-Axis Roller and Bed Rotation Assemblies. I also just found out how much better Github desktop is than Github browser."}, {"post_id": 58860, "ts": "2026-08-31T13:13:44Z", "hours": 2.5989, "text": "Github Updates"}, {"post_id": 23959, "ts": "2026-07-07T06:03:52Z", "hours": 1.3842, "text": "EndeR-Theta Mechanisms Complete! I have finished all the mechanical parts of the printer. Now, it is the fun part, electronics!"}, {"post_id": 23828, "ts": "2026-07-07T00:11:03Z", "hours": 5.1286, "text": "EndeR-Theta - Toolhead Assembly - 01 I have CADed the toolhead, with an upgraded, direct drive extruder. It was a pain to figure out how to mount the fans though."}, {"post_id": 18138, "ts": "2026-06-29T04:42:55Z", "hours": 2.5139, "text": "EndeR-Theta R-Axis - 01 I have reached the home stretch, and it is starting to look like an actual printer now! All I need to do is add the extruder, hotend, A-Axis, and a few miscellaneous parts before the CAD is complete. The R-Axis is fairly simple, but was an absolute pain to add to the assembly."}, {"post_id": 17390, "ts": "2026-06-28T04:41:45Z", "hours": 0.5333, "text": "Glitch Resolved (To an extent) I managed to create a stable file, by splitting the assembly into the 3 smaller assemblies, and only using the fastened mate. This means the CAD model will not accurately show possible degrees of motion, but at least I now have a stable file. The glitches might have been caused with the quarter millimeter difference between the bearing races on the v-rollers (shown in the second image), and I might have mated parts to different bearing races, causing an impossibility and unstable files. But I do not feel like remaking this assembly for the 4th time, so I might just leave this “fastened mate only” version as the final version of this assembly."}, {"post_id": 16746, "ts": "2026-06-27T06:22:19Z", "hours": 1.7167, "text": "Glitches An hour and 43 minutes of glitches! Everybody’s favorite thing."}, {"post_id": 16701, "ts": "2026-06-27T04:24:31Z", "hours": 2.7097, "text": "Z-Axis Sandwich - 02 The sandwich fits! The rollers are finally aligned to the extrusion rails, and I have the steppers for the A and R axes mounted. But these new steppers are more expensive than I thought they would be, (Why is shipping more expensive than the cost of the product?), so I need to adjust the design to use the original steppers."}, {"post_id": 14830, "ts": "2026-06-24T02:55:09Z", "hours": 4.8869, "text": "Z-Axis Sandwich - 01 The z-axis is a sandwich. Outer plate, then rollers, then inner plate, then more rollers, then the far plate, then even more rollers, and the power supply. (I should make better names for the plates.) And the plates somehow are reversed and the rollers will not fit on the extrusions yet. Time for adjustments!"}, {"post_id": 9031, "ts": "2026-06-15T02:02:57Z", "hours": 1.9156, "text": "The bed is able to be rotated! I have made the mechanism the bed to be able to be rotated, but I still need to add a stepper motor mount and belt."}, {"post_id": 8211, "ts": "2026-06-13T17:37:39Z", "hours": 0.9372, "text": "EndeR-Theta Bed Rotation - 02 I managed to add the eccentric nuts to the v-rollers. But this design creates a cantilevered load on all 4 screws, so I need a top plate that can adjust the hole position to match with the eccentric nuts."}, {"post_id": 7891, "ts": "2026-06-13T05:12:31Z", "hours": 1.9006, "text": "EndeR-Theta Bed Rotation Assembly I have made a basic draft of the fully assembly to allow for the 3D printer bed to rotate. I still need to figure out a way use eccentric nuts in the design to allow the v-rollers to be adjusted for small defects in the 3d print."}, {"post_id": 7176, "ts": "2026-06-11T23:50:09Z", "hours": 0.8731, "text": "EndeR - Theta Build Plate Rotation - 03 Hopefully, this is the last time I post about this part."}, {"post_id": 6631, "ts": "2026-06-11T03:45:16Z", "hours": 0.8778, "text": "EndeR-Theta Build Plate Rotation 02 I am redesigning the bed rotation rail to be only two pieces instead of 4, and mount to the bed rather than the frame. This allows me to save 4 screws and integrate the large pulley into the rail as a 2 piece assembly."}, {"post_id": 6060, "ts": "2026-06-10T05:48:08Z", "hours": 1.0131, "text": "EndeR-Theta Build Plate Rotation Mechanism 01 I have CADed a 3d printable extrusion for the v-rollers on the understand of the bed to sit on, allowing the bed to rotate, a key part of the Core-R Theta kinematic system I am modifying the printer to use."}]...
|
Title: EndeR-Theta by @Rithik | Stardance
Devlogs Title: EndeR-Theta by @Rithik | Stardance
Devlogs:
EndeR-Theta Build Plate Rotation Mechanism 01 I have CADed a 3d printable extrusion for the v-rollers on the understand of the bed to sit on, allowing the bed to rotate, a key part of the Core-R Theta kinematic system I am modifying the printer to use.
EndeR-Theta Build Plate Rotation 02 I am redesigning the bed rotation rail to be only two pieces instead of 4, and mount to the bed rather than the frame. This allows me to save 4 screws and integrate the large pulley into the rail as a 2 piece assembly.
EndeR - Theta Build Plate Rotation - 03 Hopefully, this is the last time I post about this part.
EndeR-Theta Bed Rotation Assembly I have made a basic draft of the fully assembly to allow for the 3D printer bed to rotate. I still need to figure out a way use eccentric nuts in the design to allow the v-rollers to be adjusted for small defects in the 3d print.
EndeR-Theta Bed Rotation - 02 I managed to add the eccentric nuts to the v-rollers. But this design creates a cantilevered load on all 4 screws, so I need a top plate that can adjust the hole position to match with the eccentric nuts.
The bed is able to be rotated! I have made the mechanism the bed to be able to be rotated, but I still need to add a stepper motor mount and belt.
Z-Axis Sandwich - 01 The z-axis is a sandwich. Outer plate, then rollers, then inner plate, then more rollers, then the far plate, then even more rollers, and the power supply. (I should make better names for the plates.) And the plates somehow are reversed and the rollers will not fit on the extrusions yet. Time for adjustments!
Z-Axis Sandwich - 02 The sandwich fits! The rollers are finally aligned to the extrusion rails, and I have the steppers for the A and R axes mounted. But these new steppers are more expensive than I thought they would be, (Why is shipping more expensive than the cost of the product?), so I need to adjust the design to use the original steppers.
Glitches An hour and 43 minutes of glitches! Everybody’s favorite thing.
Glitch Resolved (To an extent) I managed to create a stable file, by splitting the assembly into the 3 smaller assemblies, and only using the fastened mate. This means the CAD model will not accurately show possible degrees of motion, but at least I now have a stable file. The glitches might have been caused with the quarter millimeter difference between the bearing races on the v-rollers (shown in the second image), and I might have mated parts to different bearing races, causing an impossibility and unstable files. But I do not feel like remaking this assembly for the 4th time, so I might just leave this “fastened mate only” version as the final version of this assembly.
EndeR-Theta R-Axis - 01 I have reached the home stretch, and it is starting to look like an actual printer now! All I need to do is add the extruder, hotend, A-Axis, and a few miscellaneous parts before the CAD is complete. The R-Axis is fairly simple, but was an absolute pain to add to the assembly.
EndeR-Theta - Toolhead Assembly - 01 I have CADed the toolhead, with an upgraded, direct drive extruder. It was a pain to figure out how to mount the fans though.
EndeR-Theta Mechanisms Complete! I have finished all the mechanical parts of the printer. Now, it is the fun part, electronics!
Github Updates
Github Updates - Part 2 Added STEP and STL files of the Z-Axis Roller and Bed Rotation Assemblies. I also just found out how much better Github desktop is than Github browser.
The GitHub is fully updated...
|
1792738044.5412242
|
1793342844.5412242
|
|
490
|
Slots Tycoon 2 by @arpanshah102 | Stardance
|
arpanshah102
|
2
|
31.0
|
412
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-18T21:55:37Z", "hours": 29.0, "multiplier": 15.94, "payout": 378, "blessing": "neutral", "text": "I made a slot machine game but with a bit more too it. It has a normal slot machine, yes, but it also has a crypto clicker and planet trading section further in the game. Currently, the planet trading isn’t fully finished but the basic functionality is. I won’t be working on this game any longer though. Since creating this, I learned react and now this code looks and is terrible to operate on. This is the last update sadly. To test everything out, you can type in “enableDevTools()” into the console and get access to the dev pannel.", "repo": "https://github.com/Arpan-Shah-102/slots-tycoon-2", "demo": "https://arpan-shah-102.github.io/slots-tycoon-2/"}, {"ship_num": 2, "ts": "2026-05-31T17:26:36Z", "hours": 2.0, "multiplier": 14.53, "payout": 34, "blessing": "neutral", "text": "I made a revamp of one of my oldest projects. It has an improved UI, upgrades, shop, themes, achievements, etc. To have an easier time testing my project, use this code in the console: “enableDevTools()”", "repo": "https://github.com/Arpan-Shah-102/slots-tycoon-2", "demo": "https://arpan-shah-102.github.io/slots-tycoon-2/"}]...
|
[{"post_id": 49191, "ts": "202 [{"post_id": 49191, "ts": "2026-08-17T20:40:39Z", "hours": 2.7411, "text": "I am half way done with working on planet modifications. I have sadly lost almost all motivation to work on this though because the code has began spaghettifying and I don’t think I can get back to that after I have tasted React."}, {"post_id": 39167, "ts": "2026-08-01T22:25:10Z", "hours": 5.8369, "text": "I have finished working on the basic trading aspect of the world section. I will now work on the modifications section."}, {"post_id": 28699, "ts": "2026-07-15T03:28:32Z", "hours": 3.4939, "text": "I have started working on The World update"}, {"post_id": 11721, "ts": "2026-06-19T02:49:40Z", "hours": 15.4992, "text": "I finished working on the crypto update."}, {"post_id": 7562, "ts": "2026-06-12T17:20:59Z", "hours": 1.6553, "text": "I started working on my crypto update."}, {"post_id": 85, "ts": "2026-05-31T17:18:28Z", "hours": 2.3158, "text": "I was working on finishing the admin panel, achievement system, and fixing minor bugs like problems with the sound system."}]...
|
Title: Slots Tycoon 2 by @arpanshah102 | Stardance Title: Slots Tycoon 2 by @arpanshah102 | Stardance
Devlogs:
I was working on finishing the admin panel, achievement system, and fixing minor bugs like problems with the sound system.
I started working on my crypto update.
I finished working on the crypto update.
I have started working on The World update
I have finished working on the basic trading aspect of the world section. I will now work on the modifications section.
I am half way done with working on planet modifications. I have sadly lost almost all motivation to work on this though because the code has began spaghettifying and I don’t think I can get back to that after I have tasted React.
Ships:
I made a revamp of one of my oldest projects. It has an improved UI, upgrades, shop, themes, achievements, etc. To have an easier time testing my project, use this code in the console: “enableDevTools()”
I made a slot machine game but with a bit more too it. It has a normal slot machine, yes, but it also has a crypto clicker and planet trading section further in the game. Currently, the planet trading isn’t fully finished but the basic functionality is. I won’t be working on this game any longer though. Since creating this, I learned react and now this code looks and is terrible to operate on. This is the last update sadly. To test everything out, you can type in “enableDevTools()” into the console and get access to the dev pannel....
|
1793090853.5986545
|
1793177253.5986545
|
|
610
|
MARGE - Modular Advanced Raytracing & Graphics MARGE - Modular Advanced Raytracing & Graphics Engine by @markmris | Stardance...
|
markmris
|
2
|
31.0
|
482
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-23T22:21:26Z", "hours": 9.0, "multiplier": 16.75, "payout": 159, "blessing": "neutral", "text": "I improved and optimized my raytracing graphics engine. Images now render ~2x faster under default settings. Textures have been added, along with motion blur. I ran into issues like my first stack overflow error and nullpointers. To try the project, follow the instructions at the bottom of the README for the best experience.", "repo": "https://github.com/markmris/marge", "demo": "https://github.com/markmris/marge/releases/tag/v0.16.2"}, {"ship_num": 2, "ts": "2026-08-05T22:53:58Z", "hours": 22.0, "multiplier": 14.64, "payout": 323, "blessing": "neutral", "text": "I built a raytracing graphics engine in raw C++. The engine uses mathematical concepts involving vectors, quadratics, as well as scientific concepts like reflection and refraction. This was my first long-term project I actually committed to. I learned a lot about C++ and math in general. To try the project, follow the instructions at the bottom of the README.", "repo": "https://github.com/markmris/marge", "demo": "https://github.com/markmris/marge/releases/tag/v0.16.2"}]...
|
[{"post_id": 53380, "ts": "202 [{"post_id": 53380, "ts": "2026-08-23T22:12:27Z", "hours": 4.5031, "text": "These final hours have been excruciating. I encountered my first ever stack overflow (cannon event), I had trouble with null pointers, and somehow a function I made 2 weeks ago was broken but never showed its way through until today. But finally, I added textures! The 2 textures added are a checkerboard texture (as seen in the image below), and now you can upload any jpeg, png, or tga to the textures folder and they will be randomly applied to spheres. I added an earth texture and basketball texture. The image library was not me, it’s from an open source image library called stb_image. I would not have been able to make it myself. Also, I reorganized the project file structure because when I started my files were very non-conventional. Believe it or not, I got the file advice from The Cherno on YouTube. This is probably my final devlog for the summer. I learned a lot making this project and will continue it for the next few months to hopefully get it to where I want it to be."}, {"post_id": 49940, "ts": "2026-08-18T22:19:25Z", "hours": 3.9922, "text": "2 things done today: Fixed the black sphere bug. I realized the issue was generating the colors by using normal vectors, which return values between -1 and 1. Since negative values are clamped to 0 by the color module, I rendered black spheres. I fixed this by making a designated randomColor() function. I added Bounding Volume Hierarchies, or BVH for short. BVH creates a massive performance increase, just over doubling render speed (from 6:30 to 3:04). This feature was by far the hardest to implement and understand, but basically it chunks up objects in the world to be in groups of boxes, and instead of looping through each object in the scene for collision checks, we loop through bounding boxes (groups) first, eliminating the objects that were missed. There was lots of friction creating this feature, especially after implementing a new loop that mathematically, should make the renderer faster, but in reality it became ~2.6x slower? I scrapped that for now and I’ll revisit it later."}, {"post_id": 46630, "ts": "2026-08-14T00:57:35Z", "hours": 0.9831, "text": "Today I made motion blur and moving objects. The camera cannot move yet, but objects can now be given a current and moveto position. The lower the fps is and/or the further the points are from each other, the blurrier the object will be, since as of now, each object is “moving” at a constant speed that will get them from point A to B in 1 time unit. (Maybe I should call it ticks or something) Feel free to leave a fun name idea in the comments. One weird issue I ran into was the 2nd book skipped a few steps and used methods and variables that were never covered, so I had to ask AI for help. There’s also a bug that makes the sphere look black and the motion blur is the proper color so that will have to be fixed soon."}, {"post_id": 40898, "ts": "2026-08-04T18:29:28Z", "hours": 5.435, "text": "I made a lots of progress and learned a bunch in the past few hours! I added 2 big features: Custom Command Line Parsing and Random Scene Generation. I also ran into a lot of friction doing these. I first had to learn how to connect an enum to strings, which was pretty easy, but the hard part was making sure commands were secure and wouldn’t break under one mistype. The random scene generation was pretty hard too. The big part was calculating the center point every object revolved around and positioning them nicely. This made the renderer quite a bit slower, but it was worth it."}, {"post_id": 40148, "ts": "2026-08-03T15:32:59Z", "hours": 0.5725, "text": "Not much done this log. I just added defocus blur. This works by conceptually simulating a real camera with a virtual lens that grows and shrinks along with a focus distance. At the focus distance, objects are fully in focus. The further objects get from that distance, they decrease in focus linearly based on the size of the lens as well. Once again not much friction."}, {"post_id": 39767, "ts": "2026-08-02T23:06:59Z", "hours": 1.4736, "text": "Finished something huge today, a positionable/modifiable camera! Each image can now have a unique position for the camera, as well as a rotated camera. I also added FOV which makes the camera zoom in or out. (Default set to 90). One big thing I had to deal with was the cross products. The cross product of two vectors returns one vector perpendicular to both original vectors, which was required to calculate the direction the camera was facing. The order of calculation matters a lot because incorrect cross products flipped the image upside down, inversed rotation and position, etc."}, {"post_id": 39688, "ts": "2026-08-02T20:31:11Z", "hours": 0.3392, "text": "Didn’t do much this log. I just added some code to handle edge cases where light intersects glass or any dielectric at a 90 degree angle that screws up the pixel slightly. Not really much friction at all today. On the sphere t the left, I made it look hollow by placing another sphere inside the bigger one which makes light bend multiple times causing the hollow effect."}, {"post_id": 39216, "ts": "2026-08-02T01:19:31Z", "hours": 0.9275, "text": "Today I created another material, dielectrics. A dielectric is any material that bends or refracts light, for example, glass, water, diamonds, etc. Think of when you dip a pencil in water and it looks bent, that’s refraction. The sphere on the left is now a solid glass ball where light refracts in a way that flips it 180 degrees. I ran into an issue where I used multiplication instead of addition in the refraction code which made the refraction look warped and messy. (Forgot to screenshot it)"}, {"post_id": 37936, "ts": "2026-07-30T23:24:59Z", "hours": 0.5417, "text": "Today I made the fuzzy metal material. Metal surfaces now take a new fuzz parameter which modifies the reflectivity and makes it look like a shiny diffuse material the more fuzzy it is. In the screenshot I posted, the sphere on the left is non-fuzzy metal, the middle one is diffuse, and the right one is fuzzy metal."}, {"post_id": 35313, "ts": "2026-07-26T17:09:41Z", "hours": 1.4764, "text": "My renderer is starting to get pretty advanced now! I just finished making the metal/reflective material, as you can see in the photo. I also added gamma correction, which is just square rooting the color output so that the color accuracy and intensity is proper. One issue I ran into was figuring out a weird compiler quirk with override methods, how I wasn’t meant to use the override keyword when defining a function in the .cpp module, but you are supposed to use it only in the declaration in the .h header file."}, {"post_id": 34794, "ts": "2026-07-25T19:48:08Z", "hours": 1.2036, "text": "I fixed one big thing today! Shadow Acne. (Yes that’s what it’s called). This is an issue where a ray starts too close to its origin and accidentally hits itself, causing black freckles all over the image. (As seen in the first photo below). It seemed the only way to fix it was to increase pixel sampling, which is shooting multiple rays at each pixel that are all slightly offset and calculating the average of the colors hit, as seen in the second photo. The downside to this is that it makes the renderer MUCH slower. Image generation jumped from a few seconds to ~2 minutes. I also spent a decent amount of time getting a better understanding of the pipeline and rendering process. Here’s a rundown of how it works if you’re interested: Start by initializing the camera, image and viewport size, and defining the position of every object in the world. Loop through each pixel in the image. For each pixel looped through, loop through every object in the scene. Run each object’s respective “hit” function to calculate whether or not it was hit. If the object was hit, run the sampling process as explained above. If not, color the sky gradient. Obviously there’s much more to it but that’s too much to explain."}, {"post_id": 33207, "ts": "2026-07-22T22:10:48Z", "hours": 0.6583, "text": "Today I did some new vector math to generate diffuse materials. The idea is that a diffuse is a surface that is the same color all around it, and not this pixely, but it’s a work in progress. Not much friction today overall."}, {"post_id": 31415, "ts": "2026-07-19T19:21:13Z", "hours": 2.9711, "text": "Today I worked on antialiasing, the process of blending edge pixels with the background to give the image smoother surfaces and to look nicer. Unfortunately, this process makes the renderer a lot slower, meaning it will have to be heavily optimized over time. I also ran into a big issue where the rendered image was black. I found out that I messed up some arithmetic and also had a divide by zero error that didn’t show up."}, {"post_id": 22496, "ts": "2026-07-05T00:14:22Z", "hours": 3.9025, "text": "I finally have a decent graphics engine! Over the past while, I’ve been cleaning up and reorganizing the entire codebase so it’s much easier to work with and expand. Instead of having everything jumbled together, I’ve split the project into reusable modules and created a central header that keeps the code organized. The biggest improvement is how objects are handled. Before, adding another sphere or object required changing the rendering code itself. Now, I can simply add a new object to a list, and the engine automatically includes it the next time it renders the image. This makes building more complex worlds much faster and sets up a solid foundation for future features and shapes. This’ll hopefully someday turn into a game engine or open source graphics engine that will actually generate frames, so it can be used to make video games from scratch! Here’s the GitHub if you’re interested in following along: https://github.com/markmris/marge"}, {"post_id": 15722, "ts": "2026-06-25T16:11:09Z", "hours": 1.2989, "text": "Finally got a chance after exams to continue working on my graphics engine. I spent some time watching videos on vector math to better understand them and how they differ from regular scalars, coordinates, and lines. With my new knowledge I got to work on creating a surface normal, and now my sphere has a VERY ugly blend of colors that give it some visual depth. The concept of surface normals still doesn’t make that much sense to me, so I’m gonna spend more time watching videos and understanding them"}, {"post_id": 575, "ts": "2026-06-02T02:11:11Z", "hours": 0.4825, "text": "I’ve started rendering actual shapes now. The first shape I rendered is a sphere, though it looks like a circle (kind of like the Japanese flag) since it doesn’t have any depth yet. I also discovered and fixed a major bug making the viewport/window a square and the image a rectangle which distorted shapes and gradients."}, {"post_id": 149, "ts": "2026-05-31T23:26:33Z", "hours": 0.7561, "text": "I implemented raycasts to be used instead of manual color drawings and made a sky gradient. Ran into a bug with the vector math and moved around a few things to fix it, now it works, looks better, and renders faster!"}]...
|
Title: MARGE - Modular Advanced Raytracing & G Title: MARGE - Modular Advanced Raytracing & Graphics Engine by @markmris | Stardance
Devlogs:
I implemented raycasts to be used instead of manual color drawings and made a sky gradient. Ran into a bug with the vector math and moved around a few things to fix it, now it works, looks better, and renders faster!
I’ve started rendering actual shapes now. The first shape I rendered is a sphere, though it looks like a circle (kind of like the Japanese flag) since it doesn’t have any depth yet. I also discovered and fixed a major bug making the viewport/window a square and the image a rectangle which distorted shapes and gradients.
Finally got a chance after exams to continue working on my graphics engine. I spent some time watching videos on vector math to better understand them and how they differ from regular scalars, coordinates, and lines. With my new knowledge I got to work on creating a surface normal, and now my sphere has a VERY ugly blend of colors that give it some visual depth. The concept of surface normals still doesn’t make that much sense to me, so I’m gonna spend more time watching videos and understanding them
I finally have a decent graphics engine! Over the past while, I’ve been cleaning up and reorganizing the entire codebase so it’s much easier to work with and expand. Instead of having everything jumbled together, I’ve split the project into reusable modules and created a central header that keeps the code organized. The biggest improvement is how objects are handled. Before, adding another sphere or object required changing the rendering code itself. Now, I can simply add a new object to a list, and the engine automatically includes it the next time it renders the image. This makes building more complex worlds much faster and sets up a solid foundation for future features and shapes. This’ll hopefully someday turn into a game engine or open source graphics engine that will actually generate frames, so it can be used to make video games from scratch! Here’s the GitHub if you’re interested in following along: https://github.com/markmris/marge
Today I worked on antialiasing, the process of blending edge pixels with the background to give the image smoother surfaces and to look nicer. Unfortunately, this process makes the renderer a lot slower, meaning it will have to be heavily optimized over time. I also ran into a big issue where the rendered image was black. I found out that I messed up some arithmetic and also had a divide by zero error that didn’t show up.
Today I did some new vector math to generate diffuse materials. The idea is that a diffuse is a surface that is the same color all around it, and not this pixely, but it’s a work in progress. Not much friction today overall.
I fixed one big thing today! Shadow Acne. (Yes that’s what it’s called). This is an issue where a ray starts too close to its origin and accidentally hits itself, causing black freckles all over the image. (As seen in the first photo below). It seemed the only way to fix it was to increase pixel sampling, which is shooting multiple rays at each pixel that are all slightly offset and calculating the average of the colors hit, as seen in the second photo. The downside to this is that it makes the renderer MUCH slower. Image generation jumped from a few seconds to ~2 minutes. I also spent a decent amount of time getting a better understanding of the pipeline and rendering process. Here’s a rundown of how it works if you’re interested: Start by initializing the camera, image and viewport size, and defining the position of every object in the world. Loop through each pixel in the image. For each pixel looped through, loop through every object in the scene. Run each object’s respective “hit” function to calculate whether or not it was hit. If the object was hit, run the sampling process as explained above. If not, color the sky gradient. Obviously there’s much more to it but that’s too much to explain.
My renderer is starting to get pretty advanced now! I just finished making the metal/reflective material, as you can see in the photo. I also added gamma correction, which is just square rooting the color output so that the color accuracy and intensity is proper. One issue I ran into was figuring out a weird compiler quirk with override methods, how I wasn’t meant to use the override keyword when defining a function in the .cpp module, but you are supposed to use it only in the declaration in the .h header file.
Today I made the fuzzy metal material. Metal surfaces now take a new fuzz parameter which modifies the reflectivity and makes it look like a shiny diffuse material the more fuzzy it is. In the screenshot I posted, the sphere on the left is non-fuzzy metal, the middle one is diffuse, and the right one is fuzzy metal.
Today I created another material, dielectrics. A dielectric is any material that bends or refracts light, for example, glass, water, diamonds, etc. Think of when you dip a pencil in water and it looks bent, that’s refraction. The sphere on the left is now a solid glass ball where light refracts in a way that flips it 180 degrees. I ran into an issue where I used multiplication instead of addition in the refraction code which made the refraction look warped and messy. (Forgot to screenshot it)
Didn’t do much this log. I just added some code to handle edge cases where light intersects glass or any dielectric at a 90 degree angle that screws up the pixel slightly. Not really much friction at all today. On the sphere t the left, I made it look hollow by placing another sphere inside the bigger one which makes light bend multiple times causing the hollow effect.
Finished something huge today, a positionable/modifiable camera! Each image can now have a unique position for the camera, as well as a rotated camera. I also added FOV which makes the camera zoom in or out. (Default set to 90). One big thing I had to deal with was the cross products. The cross product of two vectors returns one vector perpendicular to both original vectors, which was required to calculate the direction the camera was facing. The order of calculation matters a lot because incorrect cross products flipped the image upside down, inversed rotation and position, etc.
Not much done this log. I just added defocus blur. This works by conceptually simulating a real camera with a virtual lens that grows and shrinks along with a focus distance. At the focus distance, objects are fully in focus. The further objects get from that distance, they decrease in focus linearly based on the size of the lens as well. Once again not much friction.
I made a lots of progress and learned a bunch in the past few hours! I added 2 big features: Custom Command Line Parsing and Random Scene Generation. I also ran into a lot of friction doing these. I first had to learn how to connect an enum to strings, which was pretty easy, but the hard part was making sure commands were secure and wouldn’t break under one mistype. The random scene generation was pretty hard too. The big part was calculating the center point every object revolved around and positioning them nicely. This made the renderer quite a bit slower, but it was worth it.
Today I made motion blur and moving objects. The camera cannot move yet, but objects can now be given a current and moveto position. The lower the fps is and/or the further the points are from each other, the blurrier the object will be, since as of now, each object is “moving” at a constant speed that will get them from point A to B in 1 time unit. (Maybe I should call it ticks or something) Feel free to leave a fun name idea in the comments. One weird issue I ran into was the 2nd book skipped a few steps and used methods and variables that were never covered, so I had to ask AI for help. There’s also a bug that makes the sphere look black and the motion blur is the proper color so that will have to be fixed soon.
2 things done today: Fixed the black sphere bug. I realized the issue was generating the colors by using normal vectors, which return values between -1 and 1. Since negative values are clamped to 0 by the color module, I rendered black spheres. I fixed this by making a designated randomColor() function. I added Bounding Volume Hierarchies, or BVH for short. BVH creates a massive performance increase, just over doubling render speed (from 6:30 to 3:04). This feature was by far the hardest to implement and understand, but basically it chunks up objects in the world to be in groups of boxes, and instead of looping through each object in the scene for collision checks, we loop through bounding boxes (groups) first, eliminating the objects that were missed. There was lots of friction creating this feature, especially after implementing a new loop that mathematically, should make the renderer faster, but in reality it became ~2.6x slower? I scrapped that for now and I’ll revisit it later.
These final hours have been excruciating. I encountered my first ever stack overflow (cannon event), I had trouble with null pointers, and somehow a function I made 2 weeks ago was broken but never showed its way through until today. But finally, I added textures! The 2 textures added are a checkerboard texture (as seen in the image below), and now you can upload any jpeg, png, or tga to the textures folder and they will be randomly applied to spheres. I added an earth texture and basketball texture. The image library was not me, it’s from an open source image library called stb_image. I would not have been able to make it myself. Also, I reorganized the project file structure because when I started my files were very non-conventional. Believe it or not, I got the file advice from The Cherno on YouTube. This is probably my final devlog for the summer. I learned a lot making this project and will continue it for the next few months to hopefully get it to where I want it to be.
Ships:
I built a raytracing graphics engine in raw C++. The engine uses mathematical concepts involving vectors, quadratics, as well as scientific concepts like reflection and refraction. This was my first long-term project I actually committed to. I learned a lot about C++ and math in general. To try the project, follow the instructions at the bottom of the README.
I improved and optimized my raytracing graphics engine. Images now render ~2x faster under default settings. Textures have been added, along with motion blur. I ran into issues like my first stack overflow error and nullpointers. To try the project, follow the instructions at the bottom of the README for the best experience....
|
1793119658.6316724
|
1793206058.6316724
|
|
1186
|
AppleMusic-Downloader by @Cret | Stardance
|
Cret
|
2
|
31.0
|
408
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T05:44:00Z", "hours": 6.0, "multiplier": 17.21, "payout": 110, "blessing": "neutral", "text": "First, I want to say that this project has surpassed 50,000 users. This year marks the project’s first year, and it has gained widespread popularity on various personal social media platforms and communities in China. My QQ user community has over 1,000 members. By using this downloader, I promise you will like https://amll.cret.uk it is a applemusic-like lryics running in your browser. So try it out; I promise you’ll like it! One thing to note is that my GitHub account was mistakenly suspended. If you need the macOS version and the opencookies.txt plugin, I will put the download links below. macos: https://cdn.hackclub.com/01a0f611-f1e0-79af-b3d1-be9b71d54349/AppleMusicDownloader-macos-arm64.dmg plugin: https://cdn.hackclub.com/01a14d82-54d0-7e29-a5ca-51fd7d0702e1/OpenCookies.txt.crx", "repo": "https://gitlab.com/IHateGitHub/applemusic-downloader", "demo": "https://cdn.hackclub.com/01a0f611-f73e-71f9-a98f-f447038e7ace/AppleMusicDownloader-windows-x64.exe"}, {"ship_num": 2, "ts": "2026-07-09T03:29:12Z", "hours": 25.0, "multiplier": 9.89, "payout": 298, "blessing": "neutral", "text": "The initial phase of this project involved some debugging work. A few days ago, I officially began the refactoring of this project. I removed redundant code and modules, abandoned the cumbersome PyQt, built a standard API backend using FastAPI, and built the web frontend using Next.js. You can run the packaged software now to try it out (don’t forget to install ffmpeg). If you don’t have an Apple Music subscription, DM @Cret on Slack and I’ll provide you with my own cookies.txt file.", "repo": "https://gitlab.com/IHateGitHub/applemusic-downloader", "demo": "https://cdn.hackclub.com/01a0f611-f73e-71f9-a98f-f447038e7ace/AppleMusicDownloader-windows-x64.exe"}]...
|
[{"post_id": 80567, "ts": "202 [{"post_id": 80567, "ts": "2026-10-18T05:29:08Z", "hours": 1.5017, "text": "v2.5.0 just published new feature: TTML lyrics with translate Using asynchronous download scheduling doubles the speed of batch downloads. Accelerate Dolby Atmos format encoding and decoding add “new version” detect feature (This won’t work until my GitHub account is unbanned) amdl cli also optimizedget-lyrics logic and add more and smarter parameter degradation strategies"}, {"post_id": 39266, "ts": "2026-08-02T03:58:06Z", "hours": 4.8944, "text": "I’ve been working on the AppleMusic-Downloader project, primarily debugging a Windows-specific issue where the desktop app would hang during downloads. The root cause turned out to be PyInstaller’s --windowed mode setting sys.stdout and sys.stderr to None , which broke async libraries like httpx and asyncio . The fix was calling AllocConsole() on Windows to allocate a visible console window and properly redirect all three standard streams ( stdin , stdout , stderr ). I also cleaned up unnecessary debug code (log file output, /api/logs endpoint), added step-by-step logging in the download pipeline to help diagnose future issues, fixed a few i18n key mismatches in the frontend, and added a note in both READMEs telling Windows users not to close the console window."}, {"post_id": 25110, "ts": "2026-07-09T03:22:25Z", "hours": 2.2103, "text": "The Dolby format finally downloaded normally. During this stage, copilot helped me debug and test the project.This project is ready to ship"}, {"post_id": 24614, "ts": "2026-07-08T10:15:06Z", "hours": 0.2636, "text": "published to PyPi!"}, {"post_id": 24589, "ts": "2026-07-08T09:21:00Z", "hours": 0.2592, "text": "workflow currently running!!!"}, {"post_id": 24579, "ts": "2026-07-08T08:26:24Z", "hours": 1.0267, "text": "All the rebuild work is complete; it’s time to open the PR."}, {"post_id": 24549, "ts": "2026-07-08T05:54:14Z", "hours": 3.2453, "text": "The interface is ready to use!"}, {"post_id": 23956, "ts": "2026-07-07T05:50:21Z", "hours": 0.6342, "text": "I felt this didn’t quite meet my aesthetic standards for the sidebar, so I decided to use Figma to design the UI."}, {"post_id": 23931, "ts": "2026-07-07T04:17:02Z", "hours": 0.75, "text": "Successful integration of the front-end and back-end."}, {"post_id": 23397, "ts": "2026-07-06T10:19:39Z", "hours": 2.0333, "text": "Remove Windows-specific GUI components and associated files from the project, including CMake configurations, resource files, and source code for the Flutter window implementation. This cleanup streamlines the project structure and eliminates unnecessary dependencies for non-Windows platforms."}, {"post_id": 23317, "ts": "2026-07-06T06:10:04Z", "hours": 1.2036, "text": "I ultimately gave up on using Flutter for frontend development; it was simply too difficult. Instead, I am using Next.js combined with pywebview to build the desktop frontend."}, {"post_id": 22716, "ts": "2026-07-05T09:19:30Z", "hours": 1.66, "text": "I have completed the API construction; in this phase, I encapsulated all of gamdl’s parameters—aligning them with the definitions in core_downloader.py —into a unified API. Next up is learning Flutter for the frontend."}, {"post_id": 22161, "ts": "2026-07-04T14:09:04Z", "hours": 0.845, "text": "Rebuild starting now!!! I’m using flutter for fronted FastAPI for backend"}, {"post_id": 22034, "ts": "2026-07-04T09:04:22Z", "hours": 2.1694, "text": "All preparatory work for the refactoring has been completed. Thanks to DeepSeek for sorting out this “spaghetti code.”"}, {"post_id": 20848, "ts": "2026-07-02T15:47:33Z", "hours": 1.5944, "text": "seems that I can’t fix the atmos download issue : ( but time to rebuild this project, I just made a TODO list"}, {"post_id": 11825, "ts": "2026-06-19T08:16:34Z", "hours": 0.3442, "text": "repair downloader_song_legacy.py"}, {"post_id": 11820, "ts": "2026-06-19T07:33:57Z", "hours": 3.7414, "text": "This conversation tracked the comprehensive refactoring and bug-fixing of the AppleMusic-Downloader project. The work began by diagnosing why CN-region songs failed with a KeyError on extendedAssetUrls — fixed by switching to .get() with a fallback, and adding a webplayback-based stream path for songs without enhancedHls . We then extracted the entire download orchestration from cli.py (a Click-based CLI) into a new core_downloader.py module — a pure Python API with no terminal dependencies — and rewired both cli.py and download_worker.py (the GUI’s QThread) to call it directly, eliminating a class of Windows GUI crashes caused by Click’s stdin / stdout assumptions. We fixed download_worker.py’s variable name bug ( remux_path vs remuxed_path ) that silently dropped song files, normalized Path / str type handling, added CENC stream support (ISO-23001-7 with data:;base64, KIDs) by reconstructing Widevine PSSH boxes and passing real KIDs to mp4decrypt , switched ffmpeg remux from -f ipod to -f mp4 and added automatic fragmentation detection with fallback to aac_at / aac re-encoding for playable output, and added backward-compatible config migration for the renamed codec_song enum. We also fixed the Windows manifest name, updated the PyInstaller .spec with missing hidden imports, and corrected several type annotation issues across models.py, downloader.py, and downloader_song.py. The result is that both standard Widevine songs (e.g., ROSÉ’s toxic till the end ) and CENC-encrypted songs (e.g., Queen’s Under Pressure via the 28:ctrp256 webplayback asset) now download and play correctly across all platforms."}, {"post_id": 8585, "ts": "2026-06-14T08:47:02Z", "hours": 2.8236, "text": "really thanks deepseek help me to rebuild the interface I updated the regular expression to account for Apple changing the location of the index.js file on the Apple Music web interface following WWDC2026. After removing redundant code, I used AI to add cross-platform compatibility support, moving closer to a full project refactor once the holidays are over. I also revamped the UI, implementing a card-stacking layout to make the logs easier to read. Huge thanks to AI—it has made fixing baffling bugs far more efficient."}, {"post_id": 268, "ts": "2026-06-01T14:14:37Z", "hours": 0.3014, "text": "Preparing to add new features and migrate the tech stack for cross-platform builds next month. In this update, I leveraged AI to refine part of the code and manually optimized and removed redundant code."}]...
|
Title: AppleMusic-Downloader by @Cret | Stardance
Title: AppleMusic-Downloader by @Cret | Stardance
Devlogs:
Preparing to add new features and migrate the tech stack for cross-platform builds next month. In this update, I leveraged AI to refine part of the code and manually optimized and removed redundant code.
really thanks deepseek help me to rebuild the interface I updated the regular expression to account for Apple changing the location of the index.js file on the Apple Music web interface following WWDC2026. After removing redundant code, I used AI to add cross-platform compatibility support, moving closer to a full project refactor once the holidays are over. I also revamped the UI, implementing a card-stacking layout to make the logs easier to read. Huge thanks to AI—it has made fixing baffling bugs far more efficient.
This conversation tracked the comprehensive refactoring and bug-fixing of the AppleMusic-Downloader project. The work began by diagnosing why CN-region songs failed with a KeyError on extendedAssetUrls — fixed by switching to .get() with a fallback, and adding a webplayback-based stream path for songs without enhancedHls . We then extracted the entire download orchestration from cli.py (a Click-based CLI) into a new core_downloader.py module — a pure Python API with no terminal dependencies — and rewired both cli.py and download_worker.py (the GUI’s QThread) to call it directly, eliminating a class of Windows GUI crashes caused by Click’s stdin / stdout assumptions. We fixed download_worker.py’s variable name bug ( remux_path vs remuxed_path ) that silently dropped song files, normalized Path / str type handling, added CENC stream support (ISO-23001-7 with data:;base64, KIDs) by reconstructing Widevine PSSH boxes and passing real KIDs to mp4decrypt , switched ffmpeg remux from -f ipod to -f mp4 and added automatic fragmentation detection with fallback to aac_at / aac re-encoding for playable output, and added backward-compatible config migration for the renamed codec_song enum. We also fixed the Windows manifest name, updated the PyInstaller .spec with missing hidden imports, and corrected several type annotation issues across models.py, downloader.py, and downloader_song.py. The result is that both standard Widevine songs (e.g., ROSÉ’s toxic till the end ) and CENC-encrypted songs (e.g., Queen’s Under Pressure via the 28:ctrp256 webplayback asset) now download and play correctly across all platforms.
repair downloader_song_legacy.py
seems that I can’t fix the atmos download issue : ( but time to rebuild this project, I just made a TODO list
All preparatory work for the refactoring has been completed. Thanks to DeepSeek for sorting out this “spaghetti code.”
Rebuild starting now!!! I’m using flutter for fronted FastAPI for backend
I have completed the API construction; in this phase, I encapsulated all of gamdl’s parameters—aligning them with the definitions in core_downloader.py —into a unified API. Next up is learning Flutter for the frontend.
I ultimately gave up on using Flutter for frontend development; it was simply too difficult. Instead, I am using Next.js combined with pywebview to build the desktop frontend.
Remove Windows-specific GUI components and associated files from the project, including CMake configurations, resource files, and source code for the Flutter window implementation. This cleanup streamlines the project structure and eliminates unnecessary dependencies for non-Windows platforms.
Successful integration of the front-end and back-end.
I felt this didn’t quite meet my aesthetic standards for the sidebar, so I decided to use Figma to design the UI.
The interface is ready to use!
All the rebuild work is complete; it’s time to open the PR.
workflow currently running!!!
published to PyPi!
The Dolby format finally downloaded normally. During this stage, copilot helped me debug and test the project.This project is ready to ship
I’ve been working on the AppleMusic-Downloader project, primarily debugging a Windows-specific issue where the desktop app would hang during downloads. The root cause turned out to be PyInstaller’s --windowed mode setting sys.stdout and sys.stderr to None , which broke async libraries like httpx and asyncio . The fix was calling AllocConsole() on Windows to allocate a visible console window and properly redirect all three standard streams ( stdin , stdout , stderr ). I also cleaned up unnecessary debug code (log file output, /api/logs endpoint), added step-by-step logging in the download pipeline to help diagnose future issues, fixed a few i18n key mismatches in the frontend, and added a note in both READMEs telling Windows users not to close the console window.
v2.5.0 just published new feature: TTML lyrics with translate Using asynchronous download scheduling doubles the speed of batch downloads. Accelerate Dolby Atmos format encoding and decoding add “new version” detect feature (This won’t work until my GitHub account is unbanned) amdl cli also optimizedget-lyrics logic and add more and smarter parameter degradation strategies
Ships:
The initial phase of this project involved some debugging work. A few days ago, I officially began the refactoring of this project. I removed redundant code and modules, abandoned the cumbersome PyQt, built a standard API backend using FastAPI, and built the web frontend using Next.js. You can run the packaged software now to try it out (don’t forget to install ffmpeg). If you don’t have an Apple Music subscription, DM @Cret on Slack and I’ll provide you with my own cookies.txt file.
First, I want to say that this project has surpassed 50,000 users. This year marks the project’s first year, and it has gained widespread popularity on various personal social media platforms and communities in China. My QQ user community has over 1,000 members. By using this downloader, I promise you will like https://amll.cret.uk it is a applemusic-like lryics running in your browser. So try it out; I promise you’ll like it! One thing to note is that my GitHub account was mistakenly suspended. If you need the macOS version and the opencookies.txt plugin, I will put the download links below. macos: https://cdn.hackclub.com/01a0f611-f1e0-79af-b3d1-be9b71d54349/AppleMusicDownloader-macos-arm64.dmg plugin: https://cdn.hackclub.com/01a14d82-54d0-7e29-a5ca-51fd7d0702e1/OpenCookies.txt.crx...
|
1793101738.5219295
|
1793188138.5219295
|
|
1846
|
N-body sim by @indcader | Stardance
|
indcader
|
2
|
31.0
|
451
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-30T21:57:17Z", "hours": 6.0, "multiplier": 18.6, "payout": 116, "blessing": "neutral", "text": "I wrote a N-body simulation in Pygame. The project allows users to mess with gravitational bodies and create interesting systems. After recieving feedback from the last ship, I made modifications to the project which will allow the program to be more easy to use. I made new sub buttons on the screen which only appear after clicking on a main button. These buttons allow the user to do certain specialized tasks such as placing bodies, putting bodies in orbit, or shooting them into the abyss. I also reconfigured the controls to be more comfortable to the user (Q is now to pause since its easier to reach than P during play time). I also changed the system that allows users to modify variables like mass or time during playtime. Previously, in order to change values in the simulation, they had to bring their mouse over the text and scroll. This had major problems like the fact that it took forever to reach values, it was imprecise, and it wasn’t user-friendly. So I changed it so that the user instead clicks on the variable and types out the input they desire. Changes like this and others were made to make the project more user-friendly and fun. I also added new features as well such as the new orbit tool to allow users to make interesting systems easily and a few other new options. This update doesn’t have too many new features mainly due to the limited programming schedule I have but I hope yall enjoy it though!!!! :3", "repo": "https://github.com/Indcader56/N-body-Sim", "demo": "https://indcader56.itch.io/n-body-sim"}, {"ship_num": 2, "ts": "2026-06-28T20:59:44Z", "hours": 25.0, "multiplier": 13.6, "payout": 335, "blessing": "neutral", "text": "I made an N-body sim in which people can mess around with planetary bodies in an infinite area. Everything uses Euler’s approximation to simulate each body and the simulation allows users to add, delete, and manipulate bodies as they move around. The simulation supports up to 100-200 bodies due to it being O(n^2) and it also has cool features like zooming, variable time-steps, and a moveable player. Hope you guys can have fun with this and burn some time messing around with it! :D", "repo": "https://github.com/Indcader56/N-body-Sim", "demo": "https://indcader56.itch.io/n-body-sim"}]...
|
[{"post_id": 58366, "ts": "202 [{"post_id": 58366, "ts": "2026-08-30T19:27:25Z", "hours": 2.9086, "text": "I’ve been working on a bunch of stuff in this update! I added the ability to put things in orbit just by clicking around the body in orbit mode. No more guessing using the trajectory tool!!! This has also allowed me to make the system below which is similar to the Earth Moon Sun system! After this I plan to add other tools and polish."}, {"post_id": 38507, "ts": "2026-07-31T22:43:27Z", "hours": 1.5156, "text": "I added trails to the game! They follow every body and last for awhile. I also added some polish to the typing system and did some bug fixing. The image below shows how cool trails make basic interactions between bodies look!"}, {"post_id": 37428, "ts": "2026-07-30T04:49:30Z", "hours": 1.8106, "text": "First devlog after ship! Thank you guys for bringing in feedback about the game! I’m sorry that it took a month for me to actually fix and ship the project. I was traveling and dealing with some things. ANYWAYS! I’ve read the feedback and one of the main, reoccurring complaints was trouble with the controls. So, I decided to work on making the simulation easier to use before implementing new things. One thing I changed was the way that the user changes the mass and time variables. Throughout the project I’ve had trouble figuring out how the user should be able to modify them. By the time I shipped, the solution wasn’t clear and a bit weird (scrolling on the text). So I made it so that when the user clicks on the text, they can type in whatever they want and confirm by pressing enter. This way, users don’t have to spend forever scrolling to a desired value, that value is more precise, and it isolates the scrolling controls for zooming only. I hope to add more improvements like this before optimizing the simulation and adding things like trails to the bodies."}, {"post_id": 17906, "ts": "2026-06-28T20:51:32Z", "hours": 0.77, "text": "I have been setting everything up for the ship!!!!"}, {"post_id": 16503, "ts": "2026-06-26T21:01:17Z", "hours": 4.6617, "text": "I added a layer of polish to the game. Also got rid of the sliders! They’re too finicky and ugly and take up too much code. I also added a bunch of hotkeys to make the user’s life a bit better. Next thing I post should be the ship!!!!"}, {"post_id": 14191, "ts": "2026-06-23T05:47:17Z", "hours": 5.0042, "text": "I added a bunch of new things as well as restructuring the code a bit. I added the ability to manipulate time mainly. I also separated the code a bit so all the physics logic is in its separate file. Hope to ship soon!!!!!!!"}, {"post_id": 10234, "ts": "2026-06-16T21:16:25Z", "hours": 1.395, "text": "I made the bodies colorful! I also added a slider for the mass so the scroll wheel is just for zoom. Also going to clean up the code soon (I keep procrastinating lol) and this might be the version where I ship et!"}, {"post_id": 9730, "ts": "2026-06-16T04:59:50Z", "hours": 4.6567, "text": "Sorry I haven’t posted in awhile, but I got a BIGGIE UPDATEEEEEEEEE I added the ability to move around the world and zoom in and out of the play area. No more do you have to witness your beautiful 2 body system go off screen into oblivion! Now, you can follow it to the ends of the universe!!!!!! After this, I plan to clean up the code a bit and change the controls since now the scroll wheel is mixed up with the zooming. I plan to keep adding things to the game until its fun"}, {"post_id": 6672, "ts": "2026-06-11T05:39:00Z", "hours": 2.2294, "text": "BIGGE UPDATE ALERT I added a bunch of buttons on screen that can now be used to place and delete bodies. I also made a bunch of underlying changes so I could do this! The next thing to add is wasd controls for a player that can move around and follow bodies as they follow their trajectories. After that I may or may not add a rocket to the game. who knows!"}, {"post_id": 4719, "ts": "2026-06-08T04:33:47Z", "hours": 2.1283, "text": "I fixed a few bugs including one where the masses were added twice in collisions. I also tweaked the colors and added a mass counter so that the user can see the exact mass before placing a body. After doing this, I plan to fix any more bugs and clean up the code. Then I will implement a camera that can follow the bodies and a small ship the player can spawn. After that I (might!) be good night for this project"}, {"post_id": 2343, "ts": "2026-06-04T19:45:49Z", "hours": 0.7792, "text": "I finally figured out Github (yayayay!!!) and now my workflow is (hopefully) gud. I also added the proper formula for momentum when a body gets hit. Will need to clean up the code though."}, {"post_id": 1099, "ts": "2026-06-02T22:34:26Z", "hours": 0.6903, "text": "I changed the color of the planets (cyan is kinda getting tired) and I made it so that the planets can gobble each other up"}, {"post_id": 412, "ts": "2026-06-01T20:16:56Z", "hours": 1.0275, "text": "I added user inputs and the ability to shoot your bodies and set their sizes"}, {"post_id": 384, "ts": "2026-06-01T18:55:27Z", "hours": 1.3953, "text": "I’m working on a N-body sim"}]...
|
Title: N-body sim by @indcader | Stardance
Devlog Title: N-body sim by @indcader | Stardance
Devlogs:
I’m working on a N-body sim
I added user inputs and the ability to shoot your bodies and set their sizes
I changed the color of the planets (cyan is kinda getting tired) and I made it so that the planets can gobble each other up
I finally figured out Github (yayayay!!!) and now my workflow is (hopefully) gud. I also added the proper formula for momentum when a body gets hit. Will need to clean up the code though.
I fixed a few bugs including one where the masses were added twice in collisions. I also tweaked the colors and added a mass counter so that the user can see the exact mass before placing a body. After doing this, I plan to fix any more bugs and clean up the code. Then I will implement a camera that can follow the bodies and a small ship the player can spawn. After that I (might!) be good night for this project
BIGGE UPDATE ALERT I added a bunch of buttons on screen that can now be used to place and delete bodies. I also made a bunch of underlying changes so I could do this! The next thing to add is wasd controls for a player that can move around and follow bodies as they follow their trajectories. After that I may or may not add a rocket to the game. who knows!
Sorry I haven’t posted in awhile, but I got a BIGGIE UPDATEEEEEEEEE I added the ability to move around the world and zoom in and out of the play area. No more do you have to witness your beautiful 2 body system go off screen into oblivion! Now, you can follow it to the ends of the universe!!!!!! After this, I plan to clean up the code a bit and change the controls since now the scroll wheel is mixed up with the zooming. I plan to keep adding things to the game until its fun
I made the bodies colorful! I also added a slider for the mass so the scroll wheel is just for zoom. Also going to clean up the code soon (I keep procrastinating lol) and this might be the version where I ship et!
I added a bunch of new things as well as restructuring the code a bit. I added the ability to manipulate time mainly. I also separated the code a bit so all the physics logic is in its separate file. Hope to ship soon!!!!!!!
I added a layer of polish to the game. Also got rid of the sliders! They’re too finicky and ugly and take up too much code. I also added a bunch of hotkeys to make the user’s life a bit better. Next thing I post should be the ship!!!!
I have been setting everything up for the ship!!!!
First devlog after ship! Thank you guys for bringing in feedback about the game! I’m sorry that it took a month for me to actually fix and ship the project. I was traveling and dealing with some things. ANYWAYS! I’ve read the feedback and one of the main, reoccurring complaints was trouble with the controls. So, I decided to work on making the simulation easier to use before implementing new things. One thing I changed was the way that the user changes the mass and time variables. Throughout the project I’ve had trouble figuring out how the user should be able to modify them. By the time I shipped, the solution wasn’t clear and a bit weird (scrolling on the text). So I made it so that when the user clicks on the text, they can type in whatever they want and confirm by pressing enter. This way, users don’t have to spend forever scrolling to a desired value, that value is more precise, and it isolates the scrolling controls for zooming only. I hope to add more improvements like this before optimizing the simulation and adding things like trails to the bodies.
I added trails to the game! They follow every body and last for awhile. I also added some polish to the typing system and did some bug fixing. The image below shows how cool trails make basic interactions between bodies look!
I’ve been working on a bunch of stuff in this update! I added the ability to put things in orbit just by clicking around the body in orbit mode. No more guessing using the trajectory tool!!! This has also allowed me to make the system below which is similar to the Earth Moon Sun system! After this I plan to add other tools and polish.
Ships:
I made an N-body sim in which people can mess around with planetary bodies in an infinite area. Everything uses Euler’s approximation to simulate each body and the simulation allows users to add, delete, and manipulate bodies as they move around. The simulation supports up to 100-200 bodies due to it being O(n^2) and it also has cool features like zooming, variable time-steps, and a moveable player. Hope you guys can have fun with this and burn some time messing around with it! :D
I wrote a N-body simulation in Pygame. The project allows users to mess with gravitational bodies and create interesting systems. After recieving feedback from the last ship, I made modifications to the project which will allow the program to be more easy to use. I made new sub buttons on the screen which only appear after clicking on a main button. These buttons allow the user to do certain specialized tasks such as placing bodies, putting bodies in orbit, or shooting them into the abyss. I also reconfigured the controls to be more comfortable to the user (Q is now to pause since its easier to reach than P during play time). I also changed the system that allows users to modify variables like mass or time during playtime. Previously, in order to change values in the simulation, they had to bring their mouse over the text and scroll. This had major problems like the fact that it took forever to reach values, it was imprecise, and it wasn’t user-friendly. So I changed it so that the user instead clicks on the variable and types out the input they desire. Changes like this and others were made to make the project more user-friendly and fun. I also added new features as well such as the new orbit tool to allow users to make interesting systems easily and a few other new options. This update doesn’t have too many new features mainly due to the limited programming schedule I have but I hope yall enjoy it though!!!! :3...
|
1793242422.9232569
|
1793328822.9232569
|
|
2969
|
Libera by @weeewwwwwwww | Stardance
|
weeewwwwwwww
|
1
|
31.0
|
559
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-19T18:24:52Z", "hours": 31.0, "multiplier": 18.79, "payout": 559, "blessing": "neutral", "text": "I made an open source cross-platform tv shows and movies streaming app with torrent capabilities :D You can try it by installing the file for your platform (mind that some platforms may require extra setup)", "repo": "https://github.com/notwewnothing/libera", "demo": "https://github.com/notwewnothing/libera/releases/"}]...
|
[{"post_id": 12037, "ts": "202 [{"post_id": 12037, "ts": "2026-06-19T17:09:03Z", "hours": 10.6394, "text": "Devlog #6:The finale this is actually the largest change , it’s been mainly focused on backend, i have not only added full download support but also added full torrenting support with streaming and downlaod capabilities I have also added a settings menu but it’s rlly limited at the time The app is ready to be tested in daily driving so i am shipping it Ngl the last devlog was a week ago i forgot a lot of stuff i did and the github commit history doesn’t help much rlly :) everything should THEORETICALLY work fine there are still a lot of bugs in the app but ngl they are more of an inconvenience than a deal breaker I added limited stremIO support too since i was heavily inspired by that project and wanted to create an app that provides similar performancee without the tedious setup Changelog Fix Windows MSVC coroutine error + web icon tree-shaking crash Fix Windows MSVC coroutine error + web icon tree-shaking crash Fix CI: secrets.dart, AGP9 proguard, libtorrent Windows symlink Release v1 Desktop + web support Added torrenting + offline player Download : WIP NO WAY THIS WORKS (downloading backend + offline player) More Downloading UI + added New players and ability to change between them Downloading UI + learning the Downloading website backend I don’t have to provide a vid this time since you can install and test the app for yourself noww :DDDDD pleeaseeeeee if u doooo find any issues open a github issue telling me about itttt tnxx"}, {"post_id": 7773, "ts": "2026-06-13T00:01:32Z", "hours": 6.2378, "text": "Devlog #5 THE BIG REHALL : this might’ve been the largest update since the beginning of the project, simply put I have done a FULL UI redesign along side completing the streaming functionality along side other cool features , also the project has matured as a real project with commits to github and tests instead of just remembering what i have changed, unfortunately i can’t upload videos directly because of network issues so i have to upload to youtube So the main changes are : A heavily apple tv / apple music inspired design , I took a bunch of ss from my phone and tried to copy them as close as possible Added a watchlist and continue watching with progress parse , so you can get back from where you left off A side note here FOR SOME REASON when i tried to force it to start the video from the saved last time , the player got stuck on that specific timestamp BUT when i removed the code and returned it just to play the video from the start IT SOMEHOW WORKED , the player API FOR SOMEREASON hates when you try to force it to play from a specific time stamp , and have it’s down continue function IDK man :/ Did some Bug fixes that i didn’t notice before , it’s quite hard to find bugs since I am the only play tester and the app is not really complete so I can’t use it for a daily user case yet Performance improvements since I was working before with an android emulator so i thought performance issues were with the emulator but got to try it on bare metal now and THIS APP STILL MANAGES TO FREEZE MY S22 so i can only think what it will do to lesser phones There is just so much added I cannot talk about all of it the video should be more informative To do : The next thing is most def going to be downloads, but i am quite sure it’s the thing that’s going to take the most amount of time cuz I am going to have to somehow curl or fetch them since there is no api or somehow implement torrenting , but that’s going to be my last resort , I already have a good website in mind that acts more like a directory and it have everything in it , exactly like torrenting , but since it’s a WEBSITE , i am gonna have to try find a way to get only the stuff i am going to need I think i am going to work on the UI first Yes ik i am procrastinating but it’s HARD yk :) also here is a dancing lain since i need to upload photos"}, {"post_id": 5197, "ts": "2026-06-08T21:51:44Z", "hours": 3.7311, "text": "Devlog #4: It seems that i was able to upload vids after all :D oopppssieee , Anywayssss the main Changes in this devlog where Adding a search screen, Ik it’s UI looks awefull rn i just wanted to check that everything is working rn created a github repo (ik i am a real developer now) The UI of the whole app looks a bit bad , I started looking on the UI of the popular streaming apps and apple tv’s rllyyy looks good but it’s not that different tho soo i might borrow sm ideas from them :) I am leaving the downloads page last thing cuz it’s gonna have it’s own API (it’s not rlly an API but ill explain when i get to it ;) update; Umm it seems that the vid was too large to upload sooo here it is link enjoy this photo from a random folder for now :)"}, {"post_id": 2522, "ts": "2026-06-05T01:50:31Z", "hours": 4.3072, "text": "Devlog #3: The fact that i can only upload one photo is really bugging me , ik that i am meant to devlog each 30m but tbh most of the time i spend setting up the services and models for the API so the full UI additions will still happen in a single devlog but now there are 3 filler ones of repetitive backed work So added a detailed screen for movies and tv shows and yes i am separating them because they are separated in the code because simple TMDB doesn’t have a unified ID var but the movies have their own set of IDs so do TV shows and these IDs can overlap so to save on headache i just copied the page changed the backend to correspond to tv shows and even added the Seasons var to the text The page when loaded shows the cover art of the movie for a hardcoded 3 second (might be 6 in the code i am lazy to change it back now) and then does a fade in transition for the trailer which is taken from youtube with the youtube explode which allows me to show the vid without any overalys then comes movie title , release year , rating, runtime, and in the right the providers to it , there is an issue where a lot of the time especially is it’s a single or 2 providers it shows duplicates it’s because of the API i can fix it but it’s low priority now then under it shows the genres play add button which are placeholders now a description the cast with photos their real names and roles and finally but it’s not showing a related section that is stolen code from the home screen sidebars with correct api backend next would be probably getting to either search or fixing all the issues at one , once for all so they never bother me again prob gnna go for the search"}, {"post_id": 1837, "ts": "2026-06-04T01:38:44Z", "hours": 4.9453, "text": "Devlog #2: Sooo Home screen front end mostly done, it fetches data from TMDB but i have my own api key inserted i should add a way for users to give their own api keys So all buttons and icons are there just for show and don’t do anything yet The home screen consists of 3 main parts: -The header at the top with logo and 2 buttons -The main Box which have all relevant stuff like tv shows and movies ext -The Lists which are very modular so i can add or change them very easily later on now i have Trending Movies and Tv shows along side most popular movies from each genre The UI might not be the greatest but it works for now at least"}, {"post_id": 1161, "ts": "2026-06-03T00:25:38Z", "hours": 0.6247, "text": "Devlog #1: Since I got the proof of concept working now it’s time for a real UI , So i started working on a navbar , the app is gonna be simple with a home screen , search and downloads , I might add settings later if I found a good reason , but for now it’s staying simple :D Next thing the home screen , I found some projects with TMDB integration so I know it’s possible so no need for no proof of concept"}, {"post_id": 1091, "ts": "2026-06-02T22:24:22Z", "hours": 0.7525, "text": "Devlog #0: The start Soooo it seems that there is no good FREE streaming app for IOS/Android (especially IOS) and the ones that so either lack extremely important features or have complicated Setup, So the idea of Libera is to fix all of that and no I am not making big claims out of nothing So the implementation is already decided I am going to use TMDB api for movies/tv shows indexing since they have a free api , Vidking Player for https streaming which convininently integrates with TMDB and I think i am gonna try to find a way to curl a cool website i found with a collection to all tv shows What happened so far I got the Streaming part working fine , the api is nothing more than a customized fancy iframe that you add to websites , I just added a webviewer in the app with the ability to fullscreen , but it seems that there was an issue at first sine sometimes it would just send me to google or give me a Webpage not available , it seems that these where ads mostly which i fixed by adding a check if the website adress changed to something different and blocker the intent:// protocol which seems to only be used for ads These 2 quick fixes resulted in the player working great without ads too :D and now the player works great"}]...
|
Title: Libera by @weeewwwwwwww | Stardance
Devlog Title: Libera by @weeewwwwwwww | Stardance
Devlogs:
Devlog #0: The start Soooo it seems that there is no good FREE streaming app for IOS/Android (especially IOS) and the ones that so either lack extremely important features or have complicated Setup, So the idea of Libera is to fix all of that and no I am not making big claims out of nothing So the implementation is already decided I am going to use TMDB api for movies/tv shows indexing since they have a free api , Vidking Player for https streaming which convininently integrates with TMDB and I think i am gonna try to find a way to curl a cool website i found with a collection to all tv shows What happened so far I got the Streaming part working fine , the api is nothing more than a customized fancy iframe that you add to websites , I just added a webviewer in the app with the ability to fullscreen , but it seems that there was an issue at first sine sometimes it would just send me to google or give me a Webpage not available , it seems that these where ads mostly which i fixed by adding a check if the website adress changed to something different and blocker the intent:// protocol which seems to only be used for ads These 2 quick fixes resulted in the player working great without ads too :D and now the player works great
Devlog #1: Since I got the proof of concept working now it’s time for a real UI , So i started working on a navbar , the app is gonna be simple with a home screen , search and downloads , I might add settings later if I found a good reason , but for now it’s staying simple :D Next thing the home screen , I found some projects with TMDB integration so I know it’s possible so no need for no proof of concept
Devlog #2: Sooo Home screen front end mostly done, it fetches data from TMDB but i have my own api key inserted i should add a way for users to give their own api keys So all buttons and icons are there just for show and don’t do anything yet The home screen consists of 3 main parts: -The header at the top with logo and 2 buttons -The main Box which have all relevant stuff like tv shows and movies ext -The Lists which are very modular so i can add or change them very easily later on now i have Trending Movies and Tv shows along side most popular movies from each genre The UI might not be the greatest but it works for now at least
Devlog #3: The fact that i can only upload one photo is really bugging me , ik that i am meant to devlog each 30m but tbh most of the time i spend setting up the services and models for the API so the full UI additions will still happen in a single devlog but now there are 3 filler ones of repetitive backed work So added a detailed screen for movies and tv shows and yes i am separating them because they are separated in the code because simple TMDB doesn’t have a unified ID var but the movies have their own set of IDs so do TV shows and these IDs can overlap so to save on headache i just copied the page changed the backend to correspond to tv shows and even added the Seasons var to the text The page when loaded shows the cover art of the movie for a hardcoded 3 second (might be 6 in the code i am lazy to change it back now) and then does a fade in transition for the trailer which is taken from youtube with the youtube explode which allows me to show the vid without any overalys then comes movie title , release year , rating, runtime, and in the right the providers to it , there is an issue where a lot of the time especially is it’s a single or 2 providers it shows duplicates it’s because of the API i can fix it but it’s low priority now then under it shows the genres play add button which are placeholders now a description the cast with photos their real names and roles and finally but it’s not showing a related section that is stolen code from the home screen sidebars with correct api backend next would be probably getting to either search or fixing all the issues at one , once for all so they never bother me again prob gnna go for the search
Devlog #4: It seems that i was able to upload vids after all :D oopppssieee , Anywayssss the main Changes in this devlog where Adding a search screen, Ik it’s UI looks awefull rn i just wanted to check that everything is working rn created a github repo (ik i am a real developer now) The UI of the whole app looks a bit bad , I started looking on the UI of the popular streaming apps and apple tv’s rllyyy looks good but it’s not that different tho soo i might borrow sm ideas from them :) I am leaving the downloads page last thing cuz it’s gonna have it’s own API (it’s not rlly an API but ill explain when i get to it ;) update; Umm it seems that the vid was too large to upload sooo here it is link enjoy this photo from a random folder for now :)
Devlog #5 THE BIG REHALL : this might’ve been the largest update since the beginning of the project, simply put I have done a FULL UI redesign along side completing the streaming functionality along side other cool features , also the project has matured as a real project with commits to github and tests instead of just remembering what i have changed, unfortunately i can’t upload videos directly because of network issues so i have to upload to youtube So the main changes are : A heavily apple tv / apple music inspired design , I took a bunch of ss from my phone and tried to copy them as close as possible Added a watchlist and continue watching with progress parse , so you can get back from where you left off A side note here FOR SOME REASON when i tried to force it to start the video from the saved last time , the player got stuck on that specific timestamp BUT when i removed the code and returned it just to play the video from the start IT SOMEHOW WORKED , the player API FOR SOMEREASON hates when you try to force it to play from a specific time stamp , and have it’s down continue function IDK man :/ Did some Bug fixes that i didn’t notice before , it’s quite hard to find bugs since I am the only play tester and the app is not really complete so I can’t use it for a daily user case yet Performance improvements since I was working before with an android emulator so i thought performance issues were with the emulator but got to try it on bare metal now and THIS APP STILL MANAGES TO FREEZE MY S22 so i can only think what it will do to lesser phones There is just so much added I cannot talk about all of it the video should be more informative To do : The next thing is most def going to be downloads, but i am quite sure it’s the thing that’s going to take the most amount of time cuz I am going to have to somehow curl or fetch them since there is no api or somehow implement torrenting , but that’s going to be my last resort , I already have a good website in mind that acts more like a directory and it have everything in it , exactly like torrenting , but since it’s a WEBSITE , i am gonna have to try find a way to get only the stuff i am going to need I think i am going to work on the UI first Yes ik i am procrastinating but it’s HARD yk :) also here is a dancing lain since i need to upload photos
Devlog #6:The finale this is actually the largest change , it’s been mainly focused on backend, i have not only added full download support but also added full torrenting support with streaming and downlaod capabilities I have also added a settings menu but it’s rlly limited at the time The app is ready to be tested in daily driving so i am shipping it Ngl the last devlog was a week ago i forgot a lot of stuff i did and the github commit history doesn’t help much rlly :) everything should THEORETICALLY work fine there are still a lot of bugs in the app but ngl they are more of an inconvenience than a deal breaker I added limited stremIO support too since i was heavily inspired by that project and wanted to create an app that provides similar performancee without the tedious setup Changelog Fix Windows MSVC coroutine error + web icon tree-shaking crash Fix Windows MSVC coroutine error + web icon tree-shaking crash Fix CI: secrets.dart, AGP9 proguard, libtorrent Windows symlink Release v1 Desktop + web support Added torrenting + offline player Download : WIP NO WAY THIS WORKS (downloading backend + offline player) More Downloading UI + added New players and ability to change between them Downloading UI + learning the Downloading website backend I don’t have to provide a vid this time since you can install and test the app for yourself noww :DDDDD pleeaseeeeee if u doooo find any issues open a github issue telling me about itttt tnxx
Ships:
I made an open source cross-platform tv shows and movies streaming app with torrent capabilities :D You can try it by installing the file for your platform (mind that some platforms may require extra setup)...
|
1793127362.5490737
|
1793213762.5490737
|
|
5996
|
Auto Updater by @Afaeid | Stardance
|
Afaeid
|
1
|
31.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-11T11:09:26Z", "hours": 31.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is a npm tool that automatically updates another directory live time while editing a certain directory. The most challenging thing was version update of NodeJS, packages like path have some minor changes what rose a lot of errors. I resolved a real world problem. Now I can continue my tasks easily on SPCK editor without manually copying and pasting the files. This is really a great charm for me. People need to know Eye sight Basics of bash Basics of internet web browsing NodeJS installed machine or capability to install NodeJS npm basic commands Ability to understand the README.md file on Github", "repo": "https://github.com/afaeid/Auto-Updater", "demo": "https://www.npmjs.com/package/@afaeid/auto-updater"}]...
|
[{"post_id": 6776, "ts": "2026 [{"post_id": 6776, "ts": "2026-06-11T10:56:03Z", "hours": 5.5158, "text": "Finally, ready to be shipped!! Added clear README.md and implemented proper safe exit and error handling."}, {"post_id": 5797, "ts": "2026-06-09T18:34:56Z", "hours": 0.625, "text": "After watching the Shipping Guide, I have decided to rewrite the README.md file to make it more clear. Next, I will implement safe exit configuration. 😀😀"}, {"post_id": 5759, "ts": "2026-06-09T17:37:22Z", "hours": 0.4597, "text": "Eventually, I finished the project, solving some minor bugs. Now the package is available on NPM. Have a try!"}, {"post_id": 5617, "ts": "2026-06-09T14:12:23Z", "hours": 0.6686, "text": "After all, it is about to finish Check it on GitHub."}, {"post_id": 4987, "ts": "2026-06-08T17:11:32Z", "hours": 23.77, "text": "After working for hours , eventually, it’s almost completed. Now, only the Readme file is yet to ready."}]...
|
Title: Auto Updater by @Afaeid | Stardance
Devlog Title: Auto Updater by @Afaeid | Stardance
Devlogs:
After working for hours , eventually, it’s almost completed. Now, only the Readme file is yet to ready.
After all, it is about to finish Check it on GitHub.
Eventually, I finished the project, solving some minor bugs. Now the package is available on NPM. Have a try!
After watching the Shipping Guide, I have decided to rewrite the README.md file to make it more clear. Next, I will implement safe exit configuration. 😀😀
Finally, ready to be shipped!! Added clear README.md and implemented proper safe exit and error handling.
Ships:
This is a npm tool that automatically updates another directory live time while editing a certain directory. The most challenging thing was version update of NodeJS, packages like path have some minor changes what rose a lot of errors. I resolved a real world problem. Now I can continue my tasks easily on SPCK editor without manually copying and pasting the files. This is really a great charm for me. People need to know Eye sight Basics of bash Basics of internet web browsing NodeJS installed machine or capability to install NodeJS npm basic commands Ability to understand the README.md file on Github...
|
1793119947.8279347
|
1793206347.8279347
|
|
7224
|
Card Game by @sharmnten | Stardance
|
sharmnten
|
1
|
31.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-22T03:36:02Z", "hours": 31.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a game that aimed to be similar to Stardew Valley, but with more of a focus on making it out of debt, similar to the Steam game Gambling With Friends. While this game is not complete, players are able to create a character, explore a small town, and enter a casino, and play “Ride the Bus” on the right hand side of the Casino. I am really proud of the card games, as the animations are really good in my opinion. PS: Poker, on the left hand side of the casino, is entirely broken. DO NOT PLAY POKER or you will have to reload the page.", "repo": "https://github.com/sharmnten/card-game", "demo": "https://sharmnten.github.io/card-game/"}]...
|
[{"post_id": 81692, "ts": "202 [{"post_id": 81692, "ts": "2026-10-22T03:28:56Z", "hours": 0.9194, "text": "Added the UI to every screen, made the game full screen for web, and finally updated the website because I realized it wasn’t updating this whole time, because I hadn’t been pushing new web builds."}, {"post_id": 76567, "ts": "2026-10-03T23:56:12Z", "hours": 3.1072, "text": "Remade casino art, and added limos to the street. Made it so you can enter the casino, and when you exit you spawn in the same spot. Next I need to make the players house and some UI. After that I will work on fixing poker and blackjack, and finalizing the game mechanics."}, {"post_id": 72539, "ts": "2026-09-23T05:06:44Z", "hours": 5.0875, "text": "Worked on the map for the town. This took a really long time, as setting up the autotiling strategies was something I had never done before."}, {"post_id": 68422, "ts": "2026-09-15T02:55:47Z", "hours": 1.9653, "text": "Made it so when you start playing a game, you spawn in the same spot when the game ends."}, {"post_id": 54200, "ts": "2026-08-25T02:47:38Z", "hours": 2.5972, "text": "Created a prompt and system that starts the “Ride the Bus” and “Poker” games. The prompt appears when the player gets close. Additionally, the map of the casino was updated. The background of the camera matches the walls of the casino, so it appears there is nothing beyond the walls of the casino. Next will be making the money in card games link to the casino scene."}, {"post_id": 41134, "ts": "2026-08-05T04:36:14Z", "hours": 2.3386, "text": "Built out tilemap and configured tiles which is really tedious because I have to configure hitboxes and paint the tiles into place. A problem im having is that the foreground elements are not being ordered correctly with the player."}, {"post_id": 35046, "ts": "2026-07-26T06:42:34Z", "hours": 0.8406, "text": "Added walk animations to every single asset. Next step is to script the walk animations into place, so each animation plays at the right time, and the assets get mirrored at the right time as well."}, {"post_id": 34300, "ts": "2026-07-24T21:46:10Z", "hours": 2.2667, "text": "Started the character customizing screen, and wrote the code that allows the player to adjust the character sprite to their liking. Once this is finished, I will create a system that allows it to be saved into the game save file, and then I will have to create the rest of the animations. Then afterwards I will develop the map and the game will be almost complete."}, {"post_id": 23268, "ts": "2026-07-06T03:43:38Z", "hours": 0.9794, "text": "Created a new system for character animations where each clothing piece has a dedicated Animation Resource file. This will allow easier animation management when the user creates a custom character. Additionally, I created the police hat animations(this didn’t contribute to the time, but also is important)."}, {"post_id": 20877, "ts": "2026-07-02T16:24:42Z", "hours": 0.4219, "text": "Started setting up the player animations. It is rather tedious as I need to create idle animations for each character hair, body, shirt, and pants and shadow, but this will later allow for more customizability of the character. I will also need to create a police hat for the IRS officers, but that will come later."}, {"post_id": 20589, "ts": "2026-07-02T06:32:02Z", "hours": 1.1778, "text": "Finished the Ride the Bus card game. Turn four involved guessing which suite the next card will be for 20x multiplier. Wrote 8 new functions, overall the first card game being finished is a solid landmark for the project. In the future I will either continue to develop the other card games and possibly roulette, or I might move to character movement and map design."}, {"post_id": 5635, "ts": "2026-06-09T14:40:57Z", "hours": 5.8906, "text": "Worked a ton on a new card game I am adding, called ride the bus. Animations have been added to card dealing, so the card now smoothly tweens over and then flips over to show the face. I also updated poker so that way the game starts, takes the bet amount, and then deals cards to the player and dealer. Additionally, I created a chip scene that can be used in all the games to approximate the amount of money that is on the table."}, {"post_id": 2524, "ts": "2026-06-05T01:53:16Z", "hours": 1.0033, "text": "Got the dealing mechanism to work. Now, when the “check” button is pressed, a card comes from the deck, and goes to the players hand. This is just for testing, the real game cards will be dealt automatically."}, {"post_id": 2134, "ts": "2026-06-04T13:48:12Z", "hours": 2.2475, "text": "Made setup for poker game and blackjack game, with intial UI layout. Took sprites from Itch.io to use in the game. I took way to long making sure everything was perfectly centered, because it was annoying me. Started making a card class."}]...
|
Title: Card Game by @sharmnten | Stardance
Devlog Title: Card Game by @sharmnten | Stardance
Devlogs:
Made setup for poker game and blackjack game, with intial UI layout. Took sprites from Itch.io to use in the game. I took way to long making sure everything was perfectly centered, because it was annoying me. Started making a card class.
Got the dealing mechanism to work. Now, when the “check” button is pressed, a card comes from the deck, and goes to the players hand. This is just for testing, the real game cards will be dealt automatically.
Worked a ton on a new card game I am adding, called ride the bus. Animations have been added to card dealing, so the card now smoothly tweens over and then flips over to show the face. I also updated poker so that way the game starts, takes the bet amount, and then deals cards to the player and dealer. Additionally, I created a chip scene that can be used in all the games to approximate the amount of money that is on the table.
Finished the Ride the Bus card game. Turn four involved guessing which suite the next card will be for 20x multiplier. Wrote 8 new functions, overall the first card game being finished is a solid landmark for the project. In the future I will either continue to develop the other card games and possibly roulette, or I might move to character movement and map design.
Started setting up the player animations. It is rather tedious as I need to create idle animations for each character hair, body, shirt, and pants and shadow, but this will later allow for more customizability of the character. I will also need to create a police hat for the IRS officers, but that will come later.
Created a new system for character animations where each clothing piece has a dedicated Animation Resource file. This will allow easier animation management when the user creates a custom character. Additionally, I created the police hat animations(this didn’t contribute to the time, but also is important).
Started the character customizing screen, and wrote the code that allows the player to adjust the character sprite to their liking. Once this is finished, I will create a system that allows it to be saved into the game save file, and then I will have to create the rest of the animations. Then afterwards I will develop the map and the game will be almost complete.
Added walk animations to every single asset. Next step is to script the walk animations into place, so each animation plays at the right time, and the assets get mirrored at the right time as well.
Built out tilemap and configured tiles which is really tedious because I have to configure hitboxes and paint the tiles into place. A problem im having is that the foreground elements are not being ordered correctly with the player.
Created a prompt and system that starts the “Ride the Bus” and “Poker” games. The prompt appears when the player gets close. Additionally, the map of the casino was updated. The background of the camera matches the walls of the casino, so it appears there is nothing beyond the walls of the casino. Next will be making the money in card games link to the casino scene.
Made it so when you start playing a game, you spawn in the same spot when the game ends.
Worked on the map for the town. This took a really long time, as setting up the autotiling strategies was something I had never done before.
Remade casino art, and added limos to the street. Made it so you can enter the casino, and when you exit you spawn in the same spot. Next I need to make the players house and some UI. After that I will work on fixing poker and blackjack, and finalizing the game mechanics.
Added the UI to every screen, made the game full screen for web, and finally updated the website because I realized it wasn’t updating this whole time, because I hadn’t been pushing new web builds.
Ships:
I made a game that aimed to be similar to Stardew Valley, but with more of a focus on making it out of debt, similar to the Steam game Gambling With Friends. While this game is not complete, players are able to create a character, explore a small town, and enter a casino, and play “Ride the Bus” on the right hand side of the Casino. I am really proud of the card games, as the animations are really good in my opinion. PS: Poker, on the left hand side of the casino, is entirely broken. DO NOT PLAY POKER or you will have to reload the page....
|
1793195746.7147737
|
1793282146.7147737
|
|
17194
|
Parkello by @arfa_mariyam | Stardance
|
arfa_mariyam
|
3
|
31.0
|
216
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-16T13:48:09Z", "hours": 3.0, "multiplier": 16.84, "payout": 65, "blessing": "neutral", "text": "What I Made: I built Parkello, a complete terminal-based Car Parking Management System written in native C++. It features a gatekeeper login with masked keystrokes, real-time tracking and fare calculations across 5 distinct vehicle categories, an administrative runtime editor, and persistent file storage using fstream to save and reload records from local text files automatically. What Was Challenging: Implementing persistent storage with clean key-value labels was tricky because reading structured text back into variables required proper token handling with ifstream. I also had to resolve an infinite loop bug caused by cin failing when non-numeric characters were entered, which I fixed by clearing error flags and flushing the input buffer. What I Am Proud Of: I am proud of turning a basic beginner console script into a complete, fault-tolerant management tool. The program safely prevents lot counts from dropping below zero, persists data across application restarts, masks password inputs dynamically, and maintains a clean, centered visual layout in the terminal. How Reviewers Should Test It: Download index.exe from the GitHub Release assets and launch it. Log in using Username: admin and PIN: 1234 (the PIN masks as XXXX). Log a few vehicle arrivals (options 1–5), check Option 11 to see the live record update, and inspect parking_records.txt. Close the program and launch it again to confirm your saved values load automatically!", "repo": "https://github.com/ArfaMariyam/Parkello", "demo": "https://github.com/ArfaMariyam/Parkello/releases"}, {"ship_num": 2, "ts": "2026-08-05T07:30:11Z", "hours": 11.0, "multiplier": 8.67, "payout": 115, "blessing": "neutral", "text": "I made Parkello, a terminal-based Car Parking Management System built in C++! It helps parking operators log arrivals and departures across 5 vehicle types (bikes, cars, buses, rickshaws, and bicycles), calculate real-time fee balances, and save all records to a local text file. The most challenging part was getting the security verification system to work cleanly, specifically masking the PIN password with X characters using getch() so it stays hidden on screen. It was also tricky handling file management (fstream) and fixing input errors so typing letters wouldn’t crash the program into an infinite loop. I’m super proud of building a complete software tool from scratch using fundamental C++ concepts like while loops, if-else conditions, functions, and persistent file streams. Seeing it save records to a real text file and reload them on boot feels awesome! How to test it: Download and run the index.exe binary. Log in with Username: admin and PIN: 1234. Test parking arrivals/departures, view live records, then close and re-open the app to see your data reloaded automatically!", "repo": "https://github.com/ArfaMariyam/Parkello", "demo": "https://github.com/ArfaMariyam/Parkello/releases"}, {"ship_num": 3, "ts": "2026-07-03T03:54:08Z", "hours": 17.0, "multiplier": 2.88, "payout": 36, "blessing": "neutral", "text": "What I Made: I created a terminal-based Car Parking Management System application written in native C++ (Phase 1: Navigation & Interface Framework), bundled alongside a structured, concept-sequenced progression map of my programming fundamental practice scripts. What Was Challenging: As a complete beginner who didn’t even know how programming languages worked before this summer, the biggest challenge was figuring out control flow mechanics. I initially ran into a logic bug where my brackets trapped the console inside an infinite menu loop, completely ignoring my conditional statements. Breaking down that structure, fixing the scopes, and learning how to cleanly handle continuous lifecycle loops without crashing the program was a massive learning curve. What I Am Proud Of: I am incredibly proud of moving completely past the beginner barrier! I went from zero coding knowledge to designing a clean, optimized terminal UI engine. I also successfully compiled and published my very first binary release asset (index.exe) directly on GitHub so anyone can run my code with one click. What Reviewers Should Know to Test It: Reviewers can test my project in these ways: Run the Prebuilt Binary: Go to my repository’s Releases section, download ‘index.exe’, and double-click it to run the live console layout instantly on Windows. Compile from Source: Clone the repository and run: g++ Car_parking_project/index.cpp -o index && ./index You can choose options 1 through 14 to navigate the system, and enter 14 to cleanly exit. I’ve also pushed a short screen recording inside the ‘demo’ folder showing the interface in action!", "repo": "https://github.com/ArfaMariyam/Parkello", "demo": "https://github.com/ArfaMariyam/Parkello/releases"}]...
|
[{"post_id": 48163, "ts": "202 [{"post_id": 48163, "ts": "2026-08-16T13:40:15Z", "hours": 3.2331, "text": "Finished the final touches on Parkello! Implemented persistent file storage with fstream so the system automatically saves and reloads live parking metrics from parking_records.txt with formatted labels. Added input stream sanitization (cin.clear() and buffer flushing) across all menus to prevent infinite loop crashes if someone enters invalid non-numeric characters, tightened the login attempt lockout check, and added flexible delete confirmations (1/0/Y/N)."}, {"post_id": 41185, "ts": "2026-08-05T07:25:25Z", "hours": 3.4642, "text": "I have officially reached the finish line! The project is now fully complete, packed with major final updates to round out the entire experience. Every core system is in place and optimized for the final release. Check out the details in project to see how everything came together!"}, {"post_id": 24121, "ts": "2026-07-07T14:13:06Z", "hours": 7.6178, "text": "I have successfully completed Phase 2 of Parkello! In this update, I focused on making all the mathematical calculations work dynamically in real-time. Now, whenever a vehicle arrives or departs, the system actively updates the live record and changes variables like totalAmount, totalVehicles, bikeCount, and carCount on the fly. Finally, I fixed up the whole console text layout so all the records and menus print out completely clean and aligned in the terminal! Next step is Phase 3 to build the login gate keeper loop!"}, {"post_id": 21278, "ts": "2026-07-03T03:45:51Z", "hours": 2.6725, "text": "🚀 Phase 1 is officially alive, looping, and running smoothly! I spent these last 3 hours squashing some critical execution bugs and completely restructuring the project’s foundational layout. What’s updated in this sprint: Continuous Execution Loop: Shifted the navigation logic inside an active ‘while(true)’ loop. Instead of instantly crashing or terminating after a single button press, the program now stays active in the terminal, letting users navigate back and forth seamlessly. Optimized UI Engine: Condensed the entire 14-option terminal menu dashboard into a single, clean chained string using inline ‘\\n’ markers. This prevents terminal screen flickering and runs much faster. Clean Routing: Options 1 through 14 are now perfectly mapped to independent confirmation text outputs, and option 14 breaks the loop cleanly to close the app. Shipped the Binary: Compiled and published my first official Windows binary asset release (index.exe) along with clear quick-start installation rules right inside the project README. 🔮 The Next Phase (What’s coming next): Now that the interface map loops perfectly, my very next coding milestone is waking up the tracking data containers! I will be writing the math algorithms for options 1 through 10 so that checking cars or bikes in and out dynamically alters our total cash balance and live parking spot counts in real time inside the option 11 registry. Phase 1 architecture is officially wrapped and ready for community shipping! Let’s go! 🚀"}, {"post_id": 20668, "ts": "2026-07-02T10:10:47Z", "hours": 14.7808, "text": "Hey everyone! I am officially establishing my summer timeline for the Stardance challenge. Before this month, I barely even knew what programming languages were or how code actually worked. I chose C++ because it’s a part of my college curriculum, but learning out in the open alongside an amazing global community has turned this summer break into a massive adventure! I’ve logged over 14 hours so far, systematically breaking down fundamental concepts in a sequenced progression to build deep muscle memory: Output & Spacing (cout): Formatting text streams, line breaks, and practicing syntax by writing panels about Pakistan, the Earth, and the solar system. Memory Containers: Figuring out how computer memory isolates and treats data flags (integers, floats, double, strings, and booleans). Arithmetic Operations: Writing math calculation engines covering additions, subtractions, multiply, and divide commands. Inputs & Decisions: Pausing the console to capture keyboard text via ‘cin’ and building logical branching panels with if-else structures. Automation & Code Architecture: Mastering process iteration loops (for, while, do-while) and packaging reusable instructions into clean, functional blocks. 🚗 Flagship App Update: The Car Parking Framework! I brought these individual concepts together to initialize Phase 1 of my main project: /Car_parking_project/index.cpp . I have successfully built out the structural baseline user interface via a custom helper function menu() that maps out arrival/departure operations for 5 vehicle types. It reads keyboard input to test menu choice selections and outputs an confirmation validation statement cleanly. Thank you to everyone on the Slack channels for the daily inspiration. Let’s keep building! 🚀"}]...
|
Title: Parkello by @arfa_mariyam | Stardance
Devl Title: Parkello by @arfa_mariyam | Stardance
Devlogs:
Hey everyone! I am officially establishing my summer timeline for the Stardance challenge. Before this month, I barely even knew what programming languages were or how code actually worked. I chose C++ because it’s a part of my college curriculum, but learning out in the open alongside an amazing global community has turned this summer break into a massive adventure! I’ve logged over 14 hours so far, systematically breaking down fundamental concepts in a sequenced progression to build deep muscle memory: Output & Spacing (cout): Formatting text streams, line breaks, and practicing syntax by writing panels about Pakistan, the Earth, and the solar system. Memory Containers: Figuring out how computer memory isolates and treats data flags (integers, floats, double, strings, and booleans). Arithmetic Operations: Writing math calculation engines covering additions, subtractions, multiply, and divide commands. Inputs & Decisions: Pausing the console to capture keyboard text via ‘cin’ and building logical branching panels with if-else structures. Automation & Code Architecture: Mastering process iteration loops (for, while, do-while) and packaging reusable instructions into clean, functional blocks. 🚗 Flagship App Update: The Car Parking Framework! I brought these individual concepts together to initialize Phase 1 of my main project: /Car_parking_project/index.cpp . I have successfully built out the structural baseline user interface via a custom helper function menu() that maps out arrival/departure operations for 5 vehicle types. It reads keyboard input to test menu choice selections and outputs an confirmation validation statement cleanly. Thank you to everyone on the Slack channels for the daily inspiration. Let’s keep building! 🚀
🚀 Phase 1 is officially alive, looping, and running smoothly! I spent these last 3 hours squashing some critical execution bugs and completely restructuring the project’s foundational layout. What’s updated in this sprint: Continuous Execution Loop: Shifted the navigation logic inside an active ‘while(true)’ loop. Instead of instantly crashing or terminating after a single button press, the program now stays active in the terminal, letting users navigate back and forth seamlessly. Optimized UI Engine: Condensed the entire 14-option terminal menu dashboard into a single, clean chained string using inline ‘\n’ markers. This prevents terminal screen flickering and runs much faster. Clean Routing: Options 1 through 14 are now perfectly mapped to independent confirmation text outputs, and option 14 breaks the loop cleanly to close the app. Shipped the Binary: Compiled and published my first official Windows binary asset release (index.exe) along with clear quick-start installation rules right inside the project README. 🔮 The Next Phase (What’s coming next): Now that the interface map loops perfectly, my very next coding milestone is waking up the tracking data containers! I will be writing the math algorithms for options 1 through 10 so that checking cars or bikes in and out dynamically alters our total cash balance and live parking spot counts in real time inside the option 11 registry. Phase 1 architecture is officially wrapped and ready for community shipping! Let’s go! 🚀
I have successfully completed Phase 2 of Parkello! In this update, I focused on making all the mathematical calculations work dynamically in real-time. Now, whenever a vehicle arrives or departs, the system actively updates the live record and changes variables like totalAmount, totalVehicles, bikeCount, and carCount on the fly. Finally, I fixed up the whole console text layout so all the records and menus print out completely clean and aligned in the terminal! Next step is Phase 3 to build the login gate keeper loop!
I have officially reached the finish line! The project is now fully complete, packed with major final updates to round out the entire experience. Every core system is in place and optimized for the final release. Check out the details in project to see how everything came together!
Finished the final touches on Parkello! Implemented persistent file storage with fstream so the system automatically saves and reloads live parking metrics from parking_records.txt with formatted labels. Added input stream sanitization (cin.clear() and buffer flushing) across all menus to prevent infinite loop crashes if someone enters invalid non-numeric characters, tightened the login attempt lockout check, and added flexible delete confirmations (1/0/Y/N).
Ships:
What I Made: I created a terminal-based Car Parking Management System application written in native C++ (Phase 1: Navigation & Interface Framework), bundled alongside a structured, concept-sequenced progression map of my programming fundamental practice scripts. What Was Challenging: As a complete beginner who didn’t even know how programming languages worked before this summer, the biggest challenge was figuring out control flow mechanics. I initially ran into a logic bug where my brackets trapped the console inside an infinite menu loop, completely ignoring my conditional statements. Breaking down that structure, fixing the scopes, and learning how to cleanly handle continuous lifecycle loops without crashing the program was a massive learning curve. What I Am Proud Of: I am incredibly proud of moving completely past the beginner barrier! I went from zero coding knowledge to designing a clean, optimized terminal UI engine. I also successfully compiled and published my very first binary release asset (index.exe) directly on GitHub so anyone can run my code with one click. What Reviewers Should Know to Test It: Reviewers can test my project in these ways: Run the Prebuilt Binary: Go to my repository’s Releases section, download ‘index.exe’, and double-click it to run the live console layout instantly on Windows. Compile from Source: Clone the repository and run: g++ Car_parking_project/index.cpp -o index && ./index You can choose options 1 through 14 to navigate the system, and enter 14 to cleanly exit. I’ve also pushed a short screen recording inside the ‘demo’ folder showing the interface in action!
I made Parkello, a terminal-based Car Parking Management System built in C++! It helps parking operators log arrivals and departures across 5 vehicle types (bikes, cars, buses, rickshaws, and bicycles), calculate real-time fee balances, and save all records to a local text file. The most challenging part was getting the security verification system to work cleanly, specifically masking the PIN password with X characters using getch() so it stays hidden on screen. It was also tricky handling file management (fstream) and fixing input errors so typing letters wouldn’t crash the program into an infinite loop. I’m super proud of building a complete software tool from scratch using fundamental C++ concepts like while loops, if-else conditions, functions, and persistent file streams. Seeing it save records to a real text file and reload them on boot feels awesome! How to test it: Download and run the index.exe binary. Log in with Username: admin and PIN: 1234. Test parking arrivals/departures, view live records, then close and re-open the app to see your data reloaded automatically!
What I Made: I built Parkello, a complete terminal-based Car Parking Management System written in native C++. It features a gatekeeper login with masked keystrokes, real-time tracking and fare calculations across 5 distinct vehicle categories, an administrative runtime editor, and persistent file storage using fstream to save and reload records from local text files automatically. What Was Challenging: Implementing persistent storage with clean key-value labels was tricky because reading structured text back into variables required proper token handling with ifstream. I also had to resolve an infinite loop bug caused by cin failing when non-numeric characters were entered, which I fixed by clearing error flags and flushing the input buffer. What I Am Proud Of: I am proud of turning a basic beginner console script into a complete, fault-tolerant management tool. The program safely prevents lot counts from dropping below zero, persists data across application restarts, masks password inputs dynamically, and maintains a clean, centered visual layout in the terminal. How Reviewers Should Test It: Download index.exe from the GitHub Release assets and launch it. Log in using Username: admin and PIN: 1234 (the PIN masks as XXXX). Log a few vehicle arrivals (options 1–5), check Option 11 to see the live record update, and inspect parking_records.txt. Close the program and launch it again to confirm your saved values load automatically!...
|
1792878541.7209952
|
1793742541.7209952
|
|
18435
|
HyprTools <\> by @THEbluefirestudios | Stard HyprTools <\> by @THEbluefirestudios | Stardance...
|
THEbluefirestudios
|
1
|
31.0
|
457
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-08T11:38:09Z", "hours": 31.0, "multiplier": 14.59, "payout": 457, "blessing": "neutral", "text": "WHAT DID I MAKE? I made HyprTools, an open source suite of tools made for the average Windows PC user, so they can get more done, in less time (Supports only windows 10/11) It contains a bunch of tools, including: One-click “Fix my PC Button” [SFC & DISM] PC Cache cleanser Wi-Fi Cache cleanser One-click “Update all apps and drivers” button Refresh Display Drivers PC stress test Startup app recommendations GUI for building and running terminal commands Folder organiser File converter Fast image editor Spotlight-search-style quick access bar Voice typing helper Image to text [OCR] Auto Typer Fast anywhere-on-screen color picker Web Apps Launcher Auto Clicker Image to ASCII art Webcam feed to ASCII art (you can use this in google meet, zoom, and while streaming!) Fake Windows update and error screen Each of them assists the user in some way WHAT WAS CHALLENGING? Well, a lot of stuff, firstly this app is made in tkinter, which is torture in itself but to make it look good, I needed ICONS, but that is so hard because then you need to download the icons, use Tk.Image and yk, actually place the icons in the final zip, which takes unnecessary space, eventually, I used EMOJIS TO ACCOMPLISH THIS, with the trade-off that now my code looks straight out of GPT-3 Also making the exes with pyinstaller is a hassle, you always forget smth small and have to change it all again. WHAT AM I PROUD OF? The thing I’m most proud of is HyprSearch. Its a spotlight seasrch like app and it is very impressive, I love how managed to handle the searching better than Windows search , because it dosen’t prioritise web search, and is really great when you need to locate something in a pinch. I spent a literal day in school, deciding how the fallback chain for a search string would be (I got punished for not paying attention in class, but WORTH IT). It is the largest tool outside of the launcher, and for good reason!, Also I think I did a good job with the GUI on this one. WHAT PREREQUISITES DO PEOPLE NEED TO KNOW BEFORE TESTING? Well, this suite is made for average windows users, who aren’t tech savvy, so almost all dependencies are bundled in the .zip file in releases. The only one you need to have is VLC Media Player, which most people have, and is only for the fake update screen. Thanks for reviewing my project, I spent a lot of thime on this, and i hope you like it! baiiiiiiiiiiiiiiiii", "repo": "https://github.com/THEbluefirestudios/hyprtools", "demo": "https://github.com/THEbluefirestudios/hyprtools/releases"}]...
|
[{"post_id": 64155, "ts": "202 [{"post_id": 64155, "ts": "2026-09-08T11:21:15Z", "hours": 1.0697, "text": "AAAAND ITS DONE the github is ready, I ahve committed all changes, you can download the releases, bugs fixed all done! Now i press ship! Hope it goes well"}, {"post_id": 62197, "ts": "2026-09-05T13:45:50Z", "hours": 0.8464, "text": "I just added a warning saying that you need vlc to use some tools. I need to add a log system. [image unrelated]"}, {"post_id": 62069, "ts": "2026-09-05T09:38:27Z", "hours": 5.2597, "text": "OH MY GOD I JUST SPENT 4 HOURS ON A LAUNCHER APP WTFFF"}, {"post_id": 56553, "ts": "2026-08-28T11:05:15Z", "hours": 0.9831, "text": "Ok I kinda feel ashamed yeah but…. I used AI In my defense it was for a bulk, tedious task - converting all tool.py files to .exes, and then because pyinstaller hates me, delete them and redo it with slightly diff settings for like an hour, so I installed opencode and made the AI go through the suffering, not me, But GLM did a good job with only like 3 prompts so I don,t care, but all works now! Now the only thing left is the main app that handles all tools, and like gives user easy toggle to turn on/turn off/ use all these tools baiiiiiiiiiiiiiii (avengers assemble! ahh screenshot)"}, {"post_id": 55449, "ts": "2026-08-27T09:17:22Z", "hours": 0.8467, "text": "Ok so I made the icons for Hyprtools and saved them, also for the tools that lived in the system tray, I replaced the temp icons with the actual thing, taking some help from my newly acquired github copilot for student! Also uhh, I forgot to down the icons as transparent images so i had to do that later. Lapse recording This is one of the icons, watch the timelapse for the full catalog!"}, {"post_id": 49625, "ts": "2026-08-18T14:46:20Z", "hours": 1.4628, "text": "YEAHH After quite the break, 1 hour, and 24 minutes, HyprOCR is ready! It just reads text from images (uses WindowsOCR engine in the background). There is not really anything special about it so well… baiiiiiiiiiii (image kinda unrelated)"}, {"post_id": 44538, "ts": "2026-08-10T11:26:29Z", "hours": 0.9542, "text": "Okie Hyprsearch is done! It can: Open apps and websites only with name Run commands Solve math Install apps Search for files Search engine query Wikipedia summary bangs for quick results In a very MacOS-like package! I have also started the startup time booster, which will list out all apps in your startup apps that you may or may not need and take action accordingly baiiiiiiiii"}, {"post_id": 43326, "ts": "2026-08-08T15:02:53Z", "hours": 1.1003, "text": "So I have started building the frontend for HyprSearch This is definitely the most largest hyprtool, as it needs the extra code for the titlebarless appearance, pystray integration, spawn on keyboard shortcut, settings, displaying of results, and the ROUNDED CORNERS (dont get me started, basically u need to chroma key out a specific color that is present on the edges of the screen Well, features: You can, via this tool, open websites with only name, search using search engine, fetch wiki summary, install apps, open apps, find files, tell the time, solve math, run commands from this little bar Each search can show multiple results in order of relevance, max five results, for example, searching “Minecraft” will pull up Open app: Minecraft, then open folder “.minecraft”, then open website “ minecraft.net “ then engine search “ minecraft “ Some basic keyboard shortcuts: Alt + Q for spawning the search bar, Esc for closing the search bar, Enter for well, yk (idk how to describe it), like entering the query? (also it automatically opens the top result), and Ctrl + <1 - 5 num row keys> for opening one of the results. It lives in ur system tray! (not a lot to say here) As of writing this devlog, I am just testing stuff, like UI jank, and stuff, ik the border is thick, I am working on it PS: IMPORTANT: im fucked. u see, i am using a python lib called AppOpener for opening apps, but it cannot detect UWP apps or apps in external drives, and I use a lot of UWP apps (yk, like minecraft) and apps on external drives, so I have to remake the entire app-opening part (also i am a responsible dev and i think abt other people’s setup while coding)"}, {"post_id": 39987, "ts": "2026-08-03T10:33:17Z", "hours": 2.8053, "text": "After 2 hours, and 44 minutes, HyprSearch’s backend logic is READYYYYYY!!! This did NOT need to take this less time, but I will briefly go over what it can do: Solve mathematical expressions Run terminal commands Open apps and websites by just their name (not even a URL domain like .com is required!) Install from winget (bang only) Tell the current time (bang only) Perform a file search Fetch a Wikipedia summary (largely bang only) Search on a search engine of your choice Then, there are !bangs - short keywords to put before your query to do a specific thing and a specific thing only: Current list of bangs include: bangs = [ ' !open ' , ' !app ' , ' !web ' , ' !websearch ' , ' !file ' , ' !wiki ' , ' !time ' , ' !install ' , ' !math ' , ' !cmd ' , ] This is kinda a massive shortcut library, disguised as a search bar! baiiiiiiiiiiiiii"}, {"post_id": 37546, "ts": "2026-07-30T10:59:53Z", "hours": 1.2281, "text": "Bruh, Idk what i have been doing lately, I have been sick lately sooo….. I was unable to code or even talk about my other project at the stardance AMA with Jared Isaacman (yes I was invited) The only thing I’ve really been doing, is aimlessly just make functions for a HyprSearch that I decided to revive, so far features are: File search App search Web search + open URL Quick install apps (uses winget ) The current time for some reason Math solver Run command !bangs as a cooler way to search, does the above functions but quicker a single covalent bond (inside joke) btw this is a spotlight search clone baiiiiiii"}, {"post_id": 34524, "ts": "2026-07-25T09:50:15Z", "hours": 1.3994, "text": "Did a BIG one today This is HyprPhotos, a basic, yet fast photo editor, crop images by just clicking on 2 points, rotate, sharpen, upscale, downscale and do so much more in a very short timespan! It just uses PIL s built in functions really, so it wasn’t hard to make the functioning for, and ik the UI looks bad ok baiiiiii"}, {"post_id": 32920, "ts": "2026-07-22T11:55:47Z", "hours": 0.5128, "text": "HyprPicker is done! Its yet again, an I had built before, just had to do some improvements like giving it system tray functionality via pystray , and giving it toast messages and a nice hovering tooltip ( the screenshot ) so that it dosent just give no feedback that it is working. If you are wondering how it works, I just take a screenshot of the full screen, make a tkinter fullscreen window that forces focus, use mouse coords and PIL to get the color at a particular coord, and the entire actual GUI the user sees is just 2 toasts, one spawned at the mouse previewing color and hex code, and a toast showing that the hex code was copied to clipboard As of now, I’m making basic icons with PIL again, but I will surely replace them! baiiiiiiiiiiiiiii"}, {"post_id": 32280, "ts": "2026-07-21T10:57:57Z", "hours": 0.3931, "text": "Hyprtools - Web apps is complete, alongside voice typing! The HyprVoice was almost done yesterday, I just needed to add a Tkinter GUI. As for web apps, it was a completely finished app I made a while ago, so I just had to rebrand it a little with the courier font and - HyprTools in the titlebar. Thats it for the day! baiiiiiiiiii"}, {"post_id": 31738, "ts": "2026-07-20T11:38:30Z", "hours": 1.3083, "text": "Today i made the backend for the voice typing ‘HyprVoice’ It just uses the python lib speech recognition so it wasnt that bad, but….. I spent SOOOOOOOOOOOO long debugging it because it couldn’t actually recognise….. and then I realised my microphone wire got pulled off. bye. (i feel ashamed) (The image is how I plan to make the GUI.)"}, {"post_id": 30751, "ts": "2026-07-18T16:08:50Z", "hours": 1.5092, "text": "Pretend to type is now TypeGhost! Its a better name tbh, as for its features, you can set a typing speed, and % change for a spelling error, when the ‘ghost’ accidentally presses an adjacent key, hits backspace, and corrects itself. There are 3 modes: Boilerplate : For repetitive paragraphs, or statements Code : For code snippets, it ‘thinks’ for a while after opening brackets or hitting enter. It also strips off tab-spaces as IDEs usually autoindent. Essay : For well… essays and large paras of English text, pauses after full stop, excalamation mark, question mark to ‘think’ and also after paragraphs (newlines) baiii for today!"}, {"post_id": 30055, "ts": "2026-07-17T10:29:08Z", "hours": 0.7131, "text": "YESS, vry usefule Today I made the Fileconverter, simple enough, as of now, it supports these filetypes cat_exts = { #cats such a cute shortform for 'category' ^owo^ ' image ' : [ ' jpg ' , ' jpeg ' , ' png ' , ' webp ' , ' bmp ' , ' gif ' , ' ico ' , ' tiff ' ], ' audio ' : [ ' mp3 ' , ' wav ' , ' flac ' , ' ogg ' , ' aac ' , ' m4a ' , ' wma ' ], ' video ' : [ ' mp4 ' , ' mkv ' , ' webm ' , ' avi ' , ' mov ' , ' flv ' , ' wmv ' ],} …and it just works, what can I say? baiiiiii"}, {"post_id": 29422, "ts": "2026-07-16T11:15:32Z", "hours": 0.6317, "text": "Its time i work on this again: Today I just spent some time making the terminal command generator, as of now, it supports 'shutdown', 'echo', 'cd', 'ping', 'mkdir', 'del', 'copy', 'ipconfig', 'dir', 'cls', 'tasklist', 'taskkill', 'netstat', 'systeminfo', 'whoami', 'tree', 'xcopy', 'timeout', 'start', 'attrib', commands, I should add more but this is it as of now! d=====( ̄▽ ̄*)b"}, {"post_id": 24770, "ts": "2026-07-08T15:50:11Z", "hours": 0.6406, "text": "Finally I started working on this again, I am currently working on other features like the Game prioritize, and made ASCII camera more customised and performant! Not a lot of coding as I distributed my time between Candela Shaders and Hyprtools (image unrelated)"}, {"post_id": 22598, "ts": "2026-07-05T04:12:41Z", "hours": 1.1097, "text": "So I am now working on the Pretend to Type autotyper (it needs a better name ik) and you don’t konow how much it escalated, just for some pretend typing, i made functions for calculating distance between keys on a keyboard, a function to do spelling mistakes/fat fingering on purpose, it detects the current window to strip chars like \\t if the curent window is an IDE, AND I decided to put a hard deadline of the 31st of July. I’m so cooked. Also due to copyright, bureaucracy, my incompetence in writing production-ready code, and my refusal to use AI, the features: Desktop Pet, HyprSearch, and ffmpeg GUI will not come in HyprTools. I’m sorry :((( (image unrelated)"}, {"post_id": 21419, "ts": "2026-07-03T11:01:29Z", "hours": 0.7481, "text": "Aaandd. I’m done with the ASCII Camera! Its really jank - you need to open the app, click start, the set the app as a window capture source in OBS, then turn on virtual camera, and then can you use the ASCII camera effect in your desired use case, its also fully local so very laggy, but this is the best I can do as pyvirtualcam refuses to work on my PC"}, {"post_id": 20831, "ts": "2026-07-02T15:15:41Z", "hours": 1.5925, "text": "I added the image to ASCII feature (sample below) and its really nice! Consequentially I am also working on the ASCII camera feature but thats going rough….. Hope I dont die from caffiene overdose…. and now I shall continue to work on it."}, {"post_id": 11885, "ts": "2026-06-19T11:26:34Z", "hours": 0.9511, "text": "I added the fake update and actually autosave for ms office! thats it… byeee…. (image unrelated)"}, {"post_id": 11189, "ts": "2026-06-18T09:37:53Z", "hours": 0.6556, "text": "As of now I have made the fake BSOD, VERY VERY CONVINCING. it has a counter that changes the percent text and it automatically locks your pc the moment it finishes, making it look like your pc just restarted. I am now working on the fake update screen"}, {"post_id": 10551, "ts": "2026-06-17T10:13:03Z", "hours": 0.5925, "text": "I shifted the architecture a little bit: tools that require to be GUIless and run in the background are now seperate .pyw files, so I have made edits to the wraparound feature and made it toggle on shortcut Ctrl (right) + Insert . I also added the fake error screen and it look really convincing! Other features i added include: update all apps, autoclicker, and the PC stress test (some of these were done before the previous devlog but I forgot to mention that). Sadly, my efforts on the Enable EU features and Reset PC are in vail so they may not be added."}, {"post_id": 9994, "ts": "2026-06-16T15:10:10Z", "hours": 0.7431, "text": "These are the features i have decided: Repair & Cleanup Fix my PC ⟵ done Reinstall Windows ⟵ use systemreset.exe or shutdown /r /o into WinRE Clear Cache & Temp Files Clean Registry Keys ⟵ scour Win11Debloat GitHub for safe list + reg files !! Memory Manager !! ⟵ use psutil Deep Uninstall !! Performance & Optimization Update Drivers & Apps ⟵ winget upgrade –all Startup Time Booster ⟵ winreg on Run keys + schtasks Gaming Mode !! ⟵ psutil process list matched against hardcoded game names, psutil.Process.nice() Refresh Display Drivers ⟵ done Stress Test (WinSat) ⟵ winsat subprocess call WiFi Reset ⟵ done Windows Customization Windows Debloat !! ⟵ Win11Debloat GitHub, ship their .reg files as toggles with undo pairs Remove All Windows AI Features ⟵ Win11Debloat GitHub, same .reg toggle approach Actually Autosave (Office) !! ⟵ interval mode: pyautogui.hotkey(‘ctrl’,‘s’) on timer, aggressive mode: watch ~$ temp file mtime with os.path.getmtime Find Similar Files !! ⟵ difflib.SequenceMatcher on filenames, group by similarity score File Management Downloads & Desktop Organizer !! ⟵ os/shutil + extension-to-folder mapping Bulk File Rename ⟵ regex pattern based os.rename loop Local File Converter ⟵ FFmpeg subprocess wrapper FFmpeg GUI ⟵ dropdown UI → FFmpeg subprocess HyprImage ⟵ Pillow wrapper with action picker Productivity Tools Voice Typing ⟵ speech_recognition + pyautogui to paste output OCR: Image to Text ⟵ pytesseract or easyocr Pretend to Type ⟵ pyautogui.typewrite() with interval, probably fold into Macro Creator Macro Creator ⟵ record: keyboard lib + pyautogui polling, playback: screen color check before each click HyprSearch !! ⟵ global hotkey via keyboard lib, fuzzy file search via os.walk + difflib Terminal Command Generator ⟵ dropdown UI → command string builder Colorpicker ⟵ pyautogui.pixel() grab + magnifier overlay Extras & Fun Hyprclicker ⟵ done (existing autoclicker) Mouse Wraparound ⟵ done Image to ASCII ⟵ same approach as Bad Apple project Camera to ASCII (Virtual Cam) ⟵ OpenCV capture → ASCII render → OBS virtual cam, hardest feature overall Desktop Pet !! ⟵ transparent tkinter window + sprite animation, WS_EX_LAYERED for click-through Fake Update Screen ⟵ fullscreen tkinter canvas + fake progress bar Fake Error Screen ⟵ same, BSOD-style overlay (raw list organised by Anything AI) I have finished the simpler features"}, {"post_id": 8654, "ts": "2026-06-14T11:37:44Z", "hours": 1.2525, "text": "Ok i have added the features: mouse wraparound, open Chris Titus Tools, Fix PC button and Reset WIFI button, will add more"}]...
|
Title: HyprTools <\> by @THEbluefirestudios Title: HyprTools <\> by @THEbluefirestudios | Stardance
Devlogs:
Ok i have added the features: mouse wraparound, open Chris Titus Tools, Fix PC button and Reset WIFI button, will add more
These are the features i have decided: Repair & Cleanup Fix my PC ⟵ done Reinstall Windows ⟵ use systemreset.exe or shutdown /r /o into WinRE Clear Cache & Temp Files Clean Registry Keys ⟵ scour Win11Debloat GitHub for safe list + reg files !! Memory Manager !! ⟵ use psutil Deep Uninstall !! Performance & Optimization Update Drivers & Apps ⟵ winget upgrade –all Startup Time Booster ⟵ winreg on Run keys + schtasks Gaming Mode !! ⟵ psutil process list matched against hardcoded game names, psutil.Process.nice() Refresh Display Drivers ⟵ done Stress Test (WinSat) ⟵ winsat subprocess call WiFi Reset ⟵ done Windows Customization Windows Debloat !! ⟵ Win11Debloat GitHub, ship their .reg files as toggles with undo pairs Remove All Windows AI Features ⟵ Win11Debloat GitHub, same .reg toggle approach Actually Autosave (Office) !! ⟵ interval mode: pyautogui.hotkey(‘ctrl’,‘s’) on timer, aggressive mode: watch ~$ temp file mtime with os.path.getmtime Find Similar Files !! ⟵ difflib.SequenceMatcher on filenames, group by similarity score File Management Downloads & Desktop Organizer !! ⟵ os/shutil + extension-to-folder mapping Bulk File Rename ⟵ regex pattern based os.rename loop Local File Converter ⟵ FFmpeg subprocess wrapper FFmpeg GUI ⟵ dropdown UI → FFmpeg subprocess HyprImage ⟵ Pillow wrapper with action picker Productivity Tools Voice Typing ⟵ speech_recognition + pyautogui to paste output OCR: Image to Text ⟵ pytesseract or easyocr Pretend to Type ⟵ pyautogui.typewrite() with interval, probably fold into Macro Creator Macro Creator ⟵ record: keyboard lib + pyautogui polling, playback: screen color check before each click HyprSearch !! ⟵ global hotkey via keyboard lib, fuzzy file search via os.walk + difflib Terminal Command Generator ⟵ dropdown UI → command string builder Colorpicker ⟵ pyautogui.pixel() grab + magnifier overlay Extras & Fun Hyprclicker ⟵ done (existing autoclicker) Mouse Wraparound ⟵ done Image to ASCII ⟵ same approach as Bad Apple project Camera to ASCII (Virtual Cam) ⟵ OpenCV capture → ASCII render → OBS virtual cam, hardest feature overall Desktop Pet !! ⟵ transparent tkinter window + sprite animation, WS_EX_LAYERED for click-through Fake Update Screen ⟵ fullscreen tkinter canvas + fake progress bar Fake Error Screen ⟵ same, BSOD-style overlay (raw list organised by Anything AI) I have finished the simpler features
I shifted the architecture a little bit: tools that require to be GUIless and run in the background are now seperate .pyw files, so I have made edits to the wraparound feature and made it toggle on shortcut Ctrl (right) + Insert . I also added the fake error screen and it look really convincing! Other features i added include: update all apps, autoclicker, and the PC stress test (some of these were done before the previous devlog but I forgot to mention that). Sadly, my efforts on the Enable EU features and Reset PC are in vail so they may not be added.
As of now I have made the fake BSOD, VERY VERY CONVINCING. it has a counter that changes the percent text and it automatically locks your pc the moment it finishes, making it look like your pc just restarted. I am now working on the fake update screen
I added the fake update and actually autosave for ms office! thats it… byeee…. (image unrelated)
I added the image to ASCII feature (sample below) and its really nice! Consequentially I am also working on the ASCII camera feature but thats going rough….. Hope I dont die from caffiene overdose…. and now I shall continue to work on it.
Aaandd. I’m done with the ASCII Camera! Its really jank - you need to open the app, click start, the set the app as a window capture source in OBS, then turn on virtual camera, and then can you use the ASCII camera effect in your desired use case, its also fully local so very laggy, but this is the best I can do as pyvirtualcam refuses to work on my PC
So I am now working on the Pretend to Type autotyper (it needs a better name ik) and you don’t konow how much it escalated, just for some pretend typing, i made functions for calculating distance between keys on a keyboard, a function to do spelling mistakes/fat fingering on purpose, it detects the current window to strip chars like \t if the curent window is an IDE, AND I decided to put a hard deadline of the 31st of July. I’m so cooked. Also due to copyright, bureaucracy, my incompetence in writing production-ready code, and my refusal to use AI, the features: Desktop Pet, HyprSearch, and ffmpeg GUI will not come in HyprTools. I’m sorry :((( (image unrelated)
Finally I started working on this again, I am currently working on other features like the Game prioritize, and made ASCII camera more customised and performant! Not a lot of coding as I distributed my time between Candela Shaders and Hyprtools (image unrelated)
Its time i work on this again: Today I just spent some time making the terminal command generator, as of now, it supports 'shutdown', 'echo', 'cd', 'ping', 'mkdir', 'del', 'copy', 'ipconfig', 'dir', 'cls', 'tasklist', 'taskkill', 'netstat', 'systeminfo', 'whoami', 'tree', 'xcopy', 'timeout', 'start', 'attrib', commands, I should add more but this is it as of now! d=====( ̄▽ ̄*)b
YESS, vry usefule Today I made the Fileconverter, simple enough, as of now, it supports these filetypes cat_exts = { #cats such a cute shortform for 'category' ^owo^ ' image ' : [ ' jpg ' , ' jpeg ' , ' png ' , ' webp ' , ' bmp ' , ' gif ' , ' ico ' , ' tiff ' ], ' audio ' : [ ' mp3 ' , ' wav ' , ' flac ' , ' ogg ' , ' aac ' , ' m4a ' , ' wma ' ], ' video ' : [ ' mp4 ' , ' mkv ' , ' webm ' , ' avi ' , ' mov ' , ' flv ' , ' wmv ' ],} …and it just works, what can I say? baiiiiii
Pretend to type is now TypeGhost! Its a better name tbh, as for its features, you can set a typing speed, and % change for a spelling error, when the ‘ghost’ accidentally presses an adjacent key, hits backspace, and corrects itself. There are 3 modes: Boilerplate : For repetitive paragraphs, or statements Code : For code snippets, it ‘thinks’ for a while after opening brackets or hitting enter. It also strips off tab-spaces as IDEs usually autoindent. Essay : For well… essays and large paras of English text, pauses after full stop, excalamation mark, question mark to ‘think’ and also after paragraphs (newlines) baiii for today!
Today i made the backend for the voice typing ‘HyprVoice’ It just uses the python lib speech recognition so it wasnt that bad, but….. I spent SOOOOOOOOOOOO long debugging it because it couldn’t actually recognise….. and then I realised my microphone wire got pulled off. bye. (i feel ashamed) (The image is how I plan to make the GUI.)
Hyprtools - Web apps is complete, alongside voice typing! The HyprVoice was almost done yesterday, I just needed to add a Tkinter GUI. As for web apps, it was a completely finished app I made a while ago, so I just had to rebrand it a little with the courier font and - HyprTools in the titlebar. Thats it for the day! baiiiiiiiiii
HyprPicker is done! Its yet again, an I had built before, just had to do some improvements like giving it system tray functionality via pystray , and giving it toast messages and a nice hovering tooltip ( the screenshot ) so that it dosent just give no feedback that it is working. If you are wondering how it works, I just take a screenshot of the full screen, make a tkinter fullscreen window that forces focus, use mouse coords and PIL to get the color at a particular coord, and the entire actual GUI the user sees is just 2 toasts, one spawned at the mouse previewing color and hex code, and a toast showing that the hex code was copied to clipboard As of now, I’m making basic icons with PIL again, but I will surely replace them! baiiiiiiiiiiiiiii
Did a BIG one today This is HyprPhotos, a basic, yet fast photo editor, crop images by just clicking on 2 points, rotate, sharpen, upscale, downscale and do so much more in a very short timespan! It just uses PIL s built in functions really, so it wasn’t hard to make the functioning for, and ik the UI looks bad ok baiiiiii
Bruh, Idk what i have been doing lately, I have been sick lately sooo….. I was unable to code or even talk about my other project at the stardance AMA with Jared Isaacman (yes I was invited) The only thing I’ve really been doing, is aimlessly just make functions for a HyprSearch that I decided to revive, so far features are: File search App search Web search + open URL Quick install apps (uses winget ) The current time for some reason Math solver Run command !bangs as a cooler way to search, does the above functions but quicker a single covalent bond (inside joke) btw this is a spotlight search clone baiiiiiii
After 2 hours, and 44 minutes, HyprSearch’s backend logic is READYYYYYY!!! This did NOT need to take this less time, but I will briefly go over what it can do: Solve mathematical expressions Run terminal commands Open apps and websites by just their name (not even a URL domain like .com is required!) Install from winget (bang only) Tell the current time (bang only) Perform a file search Fetch a Wikipedia summary (largely bang only) Search on a search engine of your choice Then, there are !bangs - short keywords to put before your query to do a specific thing and a specific thing only: Current list of bangs include: bangs = [ ' !open ' , ' !app ' , ' !web ' , ' !websearch ' , ' !file ' , ' !wiki ' , ' !time ' , ' !install ' , ' !math ' , ' !cmd ' , ] This is kinda a massive shortcut library, disguised as a search bar! baiiiiiiiiiiiiii
So I have started building the frontend for HyprSearch This is definitely the most largest hyprtool, as it needs the extra code for the titlebarless appearance, pystray integration, spawn on keyboard shortcut, settings, displaying of results, and the ROUNDED CORNERS (dont get me started, basically u need to chroma key out a specific color that is present on the edges of the screen Well, features: You can, via this tool, open websites with only name, search using search engine, fetch wiki summary, install apps, open apps, find files, tell the time, solve math, run commands from this little bar Each search can show multiple results in order of relevance, max five results, for example, searching “Minecraft” will pull up Open app: Minecraft, then open folder “.minecraft”, then open website “ minecraft.net “ then engine search “ minecraft “ Some basic keyboard shortcuts: Alt + Q for spawning the search bar, Esc for closing the search bar, Enter for well, yk (idk how to describe it), like entering the query? (also it automatically opens the top result), and Ctrl + <1 - 5 num row keys> for opening one of the results. It lives in ur system tray! (not a lot to say here) As of writing this devlog, I am just testing stuff, like UI jank, and stuff, ik the border is thick, I am working on it PS: IMPORTANT: im fucked. u see, i am using a python lib called AppOpener for opening apps, but it cannot detect UWP apps or apps in external drives, and I use a lot of UWP apps (yk, like minecraft) and apps on external drives, so I have to remake the entire app-opening part (also i am a responsible dev and i think abt other people’s setup while coding)
Okie Hyprsearch is done! It can: Open apps and websites only with name Run commands Solve math Install apps Search for files Search engine query Wikipedia summary bangs for quick results In a very MacOS-like package! I have also started the startup time booster, which will list out all apps in your startup apps that you may or may not need and take action accordingly baiiiiiiiii
YEAHH After quite the break, 1 hour, and 24 minutes, HyprOCR is ready! It just reads text from images (uses WindowsOCR engine in the background). There is not really anything special about it so well… baiiiiiiiiiii (image kinda unrelated)
Ok so I made the icons for Hyprtools and saved them, also for the tools that lived in the system tray, I replaced the temp icons with the actual thing, taking some help from my newly acquired github copilot for student! Also uhh, I forgot to down the icons as transparent images so i had to do that later. Lapse recording This is one of the icons, watch the timelapse for the full catalog!
Ok I kinda feel ashamed yeah but…. I used AI In my defense it was for a bulk, tedious task - converting all tool.py files to .exes, and then because pyinstaller hates me, delete them and redo it with slightly diff settings for like an hour, so I installed opencode and made the AI go through the suffering, not me, But GLM did a good job with only like 3 prompts so I don,t care, but all works now! Now the only thing left is the main app that handles all tools, and like gives user easy toggle to turn on/turn off/ use all these tools baiiiiiiiiiiiiiii (avengers assemble! ahh screenshot)
OH MY GOD I JUST SPENT 4 HOURS ON A LAUNCHER APP WTFFF
I just added a warning saying that you need vlc to use some tools. I need to add a log system. [image unrelated]
AAAAND ITS DONE the github is ready, I ahve committed all changes, you can download the releases, bugs fixed all done! Now i press ship! Hope it goes well
Ships:
WHAT DID I MAKE? I made HyprTools, an open source suite of tools made for the average Windows PC user, so they can get more done, in less time (Supports only windows 10/11) It contains a bunch of tools, including: One-click “Fix my PC Button” [SFC & DISM] PC Cache cleanser Wi-Fi Cache cleanser One-click “Update all apps and drivers” button Refresh Display Drivers PC stress test Startup app recommendations GUI for building and running terminal commands Folder organiser File converter Fast image editor Spotlight-search-style quick access bar Voice typing helper Image to text [OCR] Auto Typer Fast anywhere-on-screen color picker Web Apps Launcher Auto Clicker Image to ASCII art Webcam feed to ASCII art (you can use this in google meet, zoom, and while streaming!) Fake Windows update and error screen Each of them assists the user in some way WHAT WAS CHALLENGING? Well, a lot of stuff, firstly this app is made in tkinter, which is torture in itself but to make it look good, I needed ICONS, but that is so hard because then you need to download the icons, use Tk.Image and yk, actually place the icons in the final zip, which takes unnecessary space, eventually, I used EMOJIS TO ACCOMPLISH THIS, with the trade-off that now my code looks straight out of GPT-3 Also making the exes with pyinstaller is a hassle, you always forget smth small and have to change it all again. WHAT AM I PROUD OF? The thing I’m most proud of is HyprSearch. Its a spotlight seasrch like app and it is very impressive, I love how managed to handle the searching better than Windows search , because it dosen’t prioritise web search, and is really great when you need to locate something in a pinch. I spent a literal day in school, deciding how the fallback chain for a search string would be (I got punished for not paying attention in class, but WORTH IT). It is the largest tool outside of the launcher, and for good reason!, Also I think I did a good job with the GUI on this one. WHAT PREREQUISITES DO PEOPLE NEED TO KNOW BEFORE TESTING? Well, this suite is made for average windows users, who aren’t tech savvy, so almost all dependencies are bundled in the .zip file in releases. The only one you need to have is VLC Media Player, which most people have, and is only for the fake update screen. Thanks for reviewing my project, I spent a lot of thime on this, and i hope you like it! baiiiiiiiiiiiiiiiii...
|
1793087785.6960292
|
1793174185.6960292
|
|
19342
|
Pulse VR by @rylvion | Stardance
|
rylvion
|
1
|
31.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-15T21:46:08Z", "hours": 31.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i created a web app for Unit 15: Website Development as part of my coursework, hosted on GitHub Pages, with multiple pages and a 4-step booking flow. a major challenge was working under time constraints while fixing bugs, improving the website, documenting, writing up the report and way way more than i expected. I am most proud of the booking system, advanced GitHub Actions, and achieving 90+ on PageSpeed Insights. To test the project, users should explore different pages and try the full booking flow (bookings tab) on both mobile and desktop. also there is 1 devlog and im shipping it rn to gather end user feedback for the next stage of u15 (review + refinement + documenting + bug fixing + more )", "repo": "https://github.com/rylvion/pulse-vr/", "demo": "https://rylvion.github.io/pulse-vr/"}]...
|
[{"post_id": 9467, "ts": "2026 [{"post_id": 9467, "ts": "2026-06-15T20:29:21Z", "hours": 30.7233, "text": "booking flow (4 steps process) home/pricing/loads of other pages rlly advanced github actions more stuff that i cant remember wireframes: https://app.moqups.com/7pztHxaFX9Yz5oI0v58osy9wUSSnmtnt/view/page/aaef4bdbf"}]...
|
Title: Pulse VR by @rylvion | Stardance
Devlogs:
Title: Pulse VR by @rylvion | Stardance
Devlogs:
booking flow (4 steps process) home/pricing/loads of other pages rlly advanced github actions more stuff that i cant remember wireframes: https://app.moqups.com/7pztHxaFX9Yz5oI0v58osy9wUSSnmtnt/view/page/aaef4bdbf
Ships:
i created a web app for Unit 15: Website Development as part of my coursework, hosted on GitHub Pages, with multiple pages and a 4-step booking flow. a major challenge was working under time constraints while fixing bugs, improving the website, documenting, writing up the report and way way more than i expected. I am most proud of the booking system, advanced GitHub Actions, and achieving 90+ on PageSpeed Insights. To test the project, users should explore different pages and try the full booking flow (bookings tab) on both mobile and desktop. also there is 1 devlog and im shipping it rn to gather end user feedback for the next stage of u15 (review + refinement + documenting + bug fixing + more )...
|
1793112657.0184155
|
1793199057.0184155
|