|
18501
|
My own personal Web by @M-Ibrahim | Stardance
|
M-Ibrahim
|
1
|
1.17
|
2
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-21T18:26:56Z", "hours": 1.0, "multiplier": 1.46, "payout": 2, "blessing": "neutral", "text": "This project is about some of the Islamic scholars who worked hard tirelessly in order to revive Islam and Muslim Prestige during the Muslim decline in subcontinent. Their biographies, beliefs and works are referred in this project.", "repo": "https://github.com/Ibrahim-Khudadad/per", "demo": "https://ibrahim-khudadad.github.io/per/"}]...
|
[{"post_id": 42768, "ts": "202 [{"post_id": 42768, "ts": "2026-08-07T17:27:16Z", "hours": 0.1744, "text": "Making my own personal website"}, {"post_id": 13026, "ts": "2026-06-21T09:26:55Z", "hours": 1.0797, "text": "I am currently working to develop my html text and other things of web site"}]...
|
Title: My own personal Web by @M-Ibrahim | Stardan Title: My own personal Web by @M-Ibrahim | Stardance
Devlogs:
I am currently working to develop my html text and other things of web site
Making my own personal website
Ships:
This project is about some of the Islamic scholars who worked hard tirelessly in order to revive Islam and Muslim Prestige during the Muslim decline in subcontinent. Their biographies, beliefs and works are referred in this project....
|
1793775533.4026976
|
1794639533.4026976
|
|
18502
|
Portable workbench futuristic bike by @jamesp | St Portable workbench futuristic bike by @jamesp | Stardance...
|
jamesp
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Portable workbench futuristic bike by @jame Title: Portable workbench futuristic bike by @jamesp | Stardance...
|
1793958757.3100731
|
1794563557.3100731
|
|
18503
|
ITLearn by @andrei1010 | Stardance
|
andrei1010
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: ITLearn by @andrei1010 | Stardance
|
1793508748.7421167
|
1794113548.7421167
|
|
18504
|
My very own WebOS by @F1rino1s | Stardance
|
F1rino1s
|
0
|
2.1
|
0
|
[]
|
[{"post_id": 9281, "ts": "2026 [{"post_id": 9281, "ts": "2026-06-15T16:11:10Z", "hours": 1.7294, "text": "refined the page’s look"}, {"post_id": 8763, "ts": "2026-06-14T15:59:07Z", "hours": 0.3697, "text": "i just finished the first page of the website"}]...
|
Title: My very own WebOS by @F1rino1s | Stardance
Title: My very own WebOS by @F1rino1s | Stardance
Devlogs:
i just finished the first page of the website
refined the page’s look...
|
1793357330.2698512
|
1793962130.2698512
|
|
18505
|
Evolutionary Neural Network for Skyblock by @Plokm Evolutionary Neural Network for Skyblock by @Plokmi | Stardance...
|
Plokmi
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Evolutionary Neural Network for Skyblock by Title: Evolutionary Neural Network for Skyblock by @Plokmi | Stardance...
|
1793368433.4783256
|
1793973233.4783256
|
|
18506
|
werewolf.io by @coded_by_carlo | Stardance
|
coded_by_carlo
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: werewolf.io by @coded_by_carlo | Stardance
|
1793465645.3343196
|
1794070445.3343196
|
|
18507
|
Daedapad by @Nauticos | Stardance
|
Nauticos
|
1
|
2.34
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-21T21:48:12Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "A small macropad with VIA compatability (hopefully). This was my first time using KiCad, Fusion, AND QMK, so all of this has been quite confusing initially, but it was fun trying to learn all these new skills!", "repo": "https://github.com/Nauticos/Daedapad", "demo": ""}]...
|
[{"post_id": 15253, "ts": "202 [{"post_id": 15253, "ts": "2026-06-24T19:23:02Z", "hours": 0.3375, "text": "Did some tweaking to refine the ship (e.g. my demo link wasn’t working, so I had to ask for it to be returned so I could change it). Also very slightly changed the format of my README.md"}, {"post_id": 13358, "ts": "2026-06-21T21:39:42Z", "hours": 0.9164, "text": "After a few tweaks and adding stuff, I think it should be ready to ship!"}, {"post_id": 13257, "ts": "2026-06-21T18:26:08Z", "hours": 0.9722, "text": "Done a few more things, and I think I’ve figured out how to properly put the layouts bit 😀"}, {"post_id": 12224, "ts": "2026-06-19T23:02:54Z", "hours": 0.2975, "text": "Never really coded before and trying to wrap my head around this when I really should be sleeping"}]...
|
Title: Daedapad by @Nauticos | Stardance
Devlogs: Title: Daedapad by @Nauticos | Stardance
Devlogs:
Never really coded before and trying to wrap my head around this when I really should be sleeping
Done a few more things, and I think I’ve figured out how to properly put the layouts bit 😀
After a few tweaks and adding stuff, I think it should be ready to ship!
Did some tweaking to refine the ship (e.g. my demo link wasn’t working, so I had to ask for it to be returned so I could change it). Also very slightly changed the format of my README.md
Ships:
A small macropad with VIA compatability (hopefully). This was my first time using KiCad, Fusion, AND QMK, so all of this has been quite confusing initially, but it was fun trying to learn all these new skills!...
|
1793850514.9048948
|
1793936914.9048948
|
|
18508
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1793929844.6447692
|
1794793844.6447692
|
|
18509
|
My awesome macropad! by @JahnviAK | Stardance
|
JahnviAK
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @JahnviAK | Stardan Title: My awesome macropad! by @JahnviAK | Stardance...
|
1793893902.0800266
|
1794498702.0800266
|
|
18510
|
Frictionless by @aylakhan | Stardance
|
aylakhan
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Frictionless by @aylakhan | Stardance
|
1793951451.402701
|
1794556251.402701
|
|
18511
|
At the Edge of the Inner System by @albu_adam | St At the Edge of the Inner System by @albu_adam | Stardance...
|
albu_adam
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: At the Edge of the Inner System by @albu_ad Title: At the Edge of the Inner System by @albu_adam | Stardance...
|
1793519495.226688
|
1794124295.226688
|
|
18512
|
Untitled project by @Kris_hna | Stardance
|
Kris_hna
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @Kris_hna | Stardance
|
1793364916.6678526
|
1793969716.6678526
|
|
18513
|
My first slack bot! by @azrifa | Stardance
|
azrifa
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @azrifa | Stardance
|
1793969324.0353358
|
1794574124.0353358
|
|
18514
|
Pokedex by @Ansh904 | Stardance
|
Ansh904
|
1
|
81.0
|
1342
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-09T15:48:59Z", "hours": 81.0, "multiplier": 19.17, "payout": 1342, "blessing": "neutral", "text": "Cosmidex!!!! A real life multi-platform Pokedex app that can identify a pokemon from a captured photo or uploaded image. The app started with making a scraper using selenium, that I used to scrape around 75,000 images of all 151 pokemon from Google images. The scraper was hard because I didnt knew selenium, but I learned it and made it. After scraping, I trained a yolov8-cls model on google colab using the scraped dataset. Then I converted the model to tflite and made the first android version of the app. Getting the app to work was really painful because it required me to manipulate the image and it’s raw pixel data to transform into the input tensor. After this everything went smoothly and I added a lot of new things like a list of all Pokemon and the fallback page when the model is not confident. I also made a web version of the app using the .web.js extensions, the web version used a tfjs model. After that i have another whole lot of things like a “Guess the Pokemon” game, shinies, a catch feature such that everytime you correctly predict a pokemon, it gets added to your caught pokemon list that is stored in local storage. The app also has shinies and you can toggle to hear pokemon cries. I am really proud of how the ui turned out, the space + pokemon theme really really looks very good, I used images from the nasa image library as backgrounds. On the Pokemon page, which displays the info for a specific pokemon including types, sprite, pokedex text (flavor text), base stats, evolutions and spawn info, the background changes dynamcally based on the type, I spent a lot of time finding those backgrounds, they perfectly match the pokemon typings. All other pages have specific backgrounds too. In the end I really like how the app started from a small side project to taking nearly 2 months to finish. I really want to add more features, but I lack the time cuz I have to study too for entrances, but I surely will add them in the future.", "repo": "https://github.com/Ansh9045/Cosmidex", "demo": "https://pokedex-murex-five-84.vercel.app/"}]...
|
[{"post_id": 44013, "ts": "202 [{"post_id": 44013, "ts": "2026-08-09T14:44:14Z", "hours": 5.5272, "text": "Cosmidex App is now finished !!!!! Finally, after 2 months, the app is finished and I am ready to ship!!! Here’s what I have added : Added Guess the Pokemon, It is addictive as hell, I used the imageTint property of the React native’s Image tag to make the whole silhouette of the pokemon black. After the user guesses it, it displays the orignal pokemon. Added cries, everytime you open the pokemon page for a pokemon, it’s latest or legacy cry plays once, you can toggle to not play it using the button on top right corner of the pokemon image. Added shiny, you can now toggle to show shiny or default sprites of the pokemon. That’s it, the project is finished :( I always want to add more, but I have to study for entrances."}, {"post_id": 42108, "ts": "2026-08-06T17:51:42Z", "hours": 10.1417, "text": "You can now get a Medal!!! Cosmidex Devlog #8 You will now get a medal everytime you catch all 151 pokemon in Generation 1!!! I have added the catch mechanishm Everytime you successfully predict a pokemon using your camera, gallery or from the Not Confident page, that pokemon would be added to your caught list. The caught list is stored in Local storage. Beside the catch mechanism here are other changes: Fixed the camera not closing issue on web by starting the Camera only when the Camera page is focused, otherwise closing it. Removed most of the unnecessay console.log() On android, the Tab was covering pokemon info on the Pokemon Page, to fix that, I made the tab shake toggled on that page, the user now needs to shake their Changed the Home page of android to match that of the web. Added a spawn tab that shows spawn locations along with methods to catch in the generation 1 games, ie- Pokemon Red, Blue and Yellow. Added the README file. Deployed the project on vercel properly, The project is now live on this link What’s next? I now want to add a daily Who’s that pokemon? Game, that would be so fun i guess. I also will add pokemon cries and show shiny versions of pokemons."}, {"post_id": 37136, "ts": "2026-07-29T16:53:18Z", "hours": 10.0683, "text": "Cosmidex Web app is complete !!! Devlog #7 The web version of the Cosmidex app is also finished, FINALLYYY!!! Here is what I have added: Converted the tflite model to TFJS, took a lot of time, many libraries were deprecated, so I had to manually remove imports for those. Created seperate web components using .web.js to upload/capture images -> preprocess -> predict, my codebase for both the android and the web version of the app is still the same. Created seperate page components for the web and changed the design for the Pokemon Page and the Home page. What’s left? The app is mostly ready for it’s first ship, I have hit the 10 hr mark thats why I am uploading a devlog early, but there’s not much left to do, I know I have been saying this for the last 2 devlogs. Here’s what is left: Remove all the console logs that still linger in components for debug. The camera doesn’t close in the web version after capturing and predicting so I have to fix that. Probably change the home page for the android version to match the web. Add some cool animations to it. At last I want to push this project one bit further and add a capturing feature, like you capture a photo of a pokemon and it gets added to your caught pokemon in the pokedex and after capturing all 151 pokemon, you get a medal."}, {"post_id": 31129, "ts": "2026-07-19T09:02:14Z", "hours": 10.1986, "text": "Pokedex Mobile app is finally finished Pokedex Devlog #6 The Pokedex mobile app is now finished and I am working on finishing the web version of the app too. Here is what I have added: A NotConfident page that is displayed when the model can’t give a solid prediction about the image. A ’AllPokemon` page that displays all 151 pokemons from generation 1 in a flatList. I was using a a very messy state based navigation so I updated it to a Stack navigation. I also add a tab at the bottom of the Pokemon, Not confident and All Pokemon pages, though it sometimes overlaps the page content like that of the mewtwo picture. Create a seperate AppContext for the web version to load the model in the web. What’s left in the project before the ship? The Mobile app is finished, I just have to make the Camera and Upload components for the web version of the app and then the project would officially be completed. I was having my exams so I wasn’t able to code for a while :("}, {"post_id": 18221, "ts": "2026-06-29T09:08:48Z", "hours": 15.4481, "text": "Pokedex App is finally complete (mostly) Devlog #5 The app is now mostly complete, this phase of the project went very smoothly. Here is what I have added: After predicting the pokemon, The app sends a request to PokeAPI at the https://pokeapi.co/api/v2/{pokemon_name} endpoint and gets the detailed information of the pokemon. The information is displayed on a pokemon page which includes basic stats, the type of the pokemon, height , wight et. I have also worked a lot of ui, majority of the time was spent in designing the ui. However the home page still looks empty, it is just a div with ImageBackground and a logo with two buttons and 1 scanner icon that I designed in canva. I have also added typed backgrounds, so that every pokemon type has a seperate space themed background, they are mostly nebula images that i found in the NASA Gallery but boyyyy do i like the themes, they look soooo gooood!!!. I am so proud of myself…. What’s left? While the app is mostly ready, there a few things that I still need/want to add: A page displaying all the 151 pokemons in generation 1 A page that is displayed when there is no confident prediction A web version of the app, which would be pretty easy, I just need to change the uploading and capturing logic for it to work on web So hopefully this is my second last devlog for this project, stay tuned !!!!"}, {"post_id": 14918, "ts": "2026-06-24T06:57:10Z", "hours": 14.8033, "text": "Pokedex Devlog #4 Heyyyyy Everyone!!! The training of the model is finally completed and I have made the first version of the Pokedex app , It captures an image using react-native-vision-camera , crops only the middle portion, resizes the image to match my model’s image size of 224*224 px , then gets the raw pixelbuffer, converts into rgb and normalises the values from 0-255 to 0-1.0 . This normalised pixel data is then fed to the model which predicts the class of the image. There were a lot of problems in making the app and there are still lot more to come , but here is everything I did: 1. An Ironical Training After collecting 75,000 images from my custom scraper, I zipped all of those images, and uploaded them directly to my colab notebook, uploading them took half an hour though😫 . I ran the training script at 50 epochs and training the model took another 8 hours . It was really ironical to see the model train in google colab on the same images that google was trying to hide from my little scraper. 2. A Successful Model After the training was completed, I had to test the model to see how it performed and whether I need to retrain it. The results shocked me, I gave the model 12 images from pintrest that it had never seen before and it predicted all of them correctly. The accuracy was way better than what I expect from a model trained on raw data. However, if needed I will clean the dataset and train again. 3. React native Camera Hell Everything was going very smoothly at this point, but I was never prepared for the next phase. I built a blank react native project, installed react-native-vision-camera and added a camera to the app.js, the camera was working, great, so I built a function to capture the photo and display it on the screen, that too worked. But the next step was to process the raw image pixel data into the format that my model required. I searched online, how to resize an image in react-native-vision-camera , the ai results told me to use the resizer package that comes with it. I spent three, three whole days!!! figuring why the resizer was not able to resize the image only to realise that it took a frame output not an image, so I rewrote the whole camera code again to use a live stream instead of capturing a photo. The resizer was working, I then normalized the pixel values while converting it into rgb format and fed the data to my model which outputed complete gibberish, all that work for nothing!!! 😭 I tried logging in the shape of input and output of the model, and the pixelformat of the bufffer and the raw pixel data. But all those were giving either undefined or 0. Nothing seemed to be working at this about, there was something seriously wrong with how I was processing the images. But then going through the docs of react-native-vision-camera , I saw that the image object that my previous capturing images code, that i had dumped, was outputting was a react-native-nitro-image object and it had an inbuilt resizeAsync function. I got frustrated again and rewrote the entire code again, this time with the previous capture photo logic. After cropping, resizing and getting the rgb data in to the required format, I tested the app with a photo of Gloom displayed on my laptop screen and it predicted it correctly. I was sooooo happyyy that it worked and is still working tho the accuracy is low due to pixel noises. What’s next? The hardest parts of the project are completed now, I just need to an api call, after the model predicts the pokemon to, get the details of the pokemon, like it’s type, pokedex entry and other things. The UI also sucks so I will work on that, I think I want to make it space theme, I don’t know how it would look but I will try. Till then… stay tuned!!!"}, {"post_id": 11166, "ts": "2026-06-18T08:01:40Z", "hours": 2.4978, "text": "ME Vs GOOGLE And I WON!!! Pokedex Devlog #3 Hey everyone I have been working on making a real life pokedex, one in which you just take the photo and get the stats of that pokemon on your screen. To achieve this I decided to train a yolov8n-cls model on images of pokemon. But getting those images were a nightmare due to GOOGLE!!! Fighting Google’s anti bot systems I built a custom scraper to scrape pokemon images from google images. But since the very start of the project, Google has been blocking me, it took a lot time for me, who had never touched selenium at that time, to bypass google’s anti bot systems. Since my laptop is very low end, I was using selenium in headless mode which triggered even more red flags for my bot. I switched from regular selenium to undetected_chromedriver , but still google’s system was flagging me with a big captcha that my little bot couldn’t solve. The main issue was that in headless mode, selenium runs a very small window size and it leaves clear machine tracks, I fixed that by using a larger window size and adding a user agent string that I chosen from a list of 10 different ua strings. Getting those Images Not being flagged by google was easy in comparison to this. Targetting the Images inside the search results was an absolute nightmare because instead of fixed static classes or ids google uses dynamic strings that change frequently, I wanted to write code that anyone can use anywhere and that is why couldn’t target those ever changing class names. I tried a lot things from targeting images inside nested divs to images inside divs with specific roles (eg: listitems ) or targeting images that have /imgres in their href attribute. But it took me an entire, with 6+ hours of coding and trying and a lot more researching and inspecting the elements of google images results but I found out that by targetting the images div with role of main with the images having a src or data-deffered attribute using the XPATH: //div[@role='main']//img[@data-deferred or @src] , I get the images which are inside the search results and I can then just use infinite scrolling to load them. The Results Knowing how to target those images, I absolutely destroyed google in the fight by making the scraper and using it to scrape a total of 74,718 images in one night without getting blocked a single time. My goal was was 500 images for each pokemon in generation 1, that is 75,500 total images, The scraper worked better than expected and I was just a 700 hundred images behind the goal. But even for those 700 images, the culprit was google not my little scraper, google didn’t have that many images for a few unpopular pokemon to fulfill my goals. What’s next? After winning the battle against google, I will use the images to train my model today, I already split those. Since my laptop is slow I will utilize google collab for training, using their own tool to train the model using the images they were trying so hard to hide XD….. and I really hope that scraping that many images is not illegal."}, {"post_id": 10545, "ts": "2026-06-17T09:57:17Z", "hours": 10.4703, "text": "Heyy Everyone Pokedex Devlog 2 !!! The selenium scraper is finally complete and it is working perfectly, except it hits a captcha some times, though it is rare. I started building this scraper without any knowledge of selenium. I started with a very basic bot that went to google and typed pokedex, I slowly added more features like using headless mode and WebDriverWait instead of hardcoded time delays. I once crashed my computer while printing the encrypted source code of the google result, XD. But I was also encountering captchas a lot so I switched to undetected_chromedriver and gave it a user agent string so that it won’t be flagged. My first bot was able to scrape the headers of the google search result. I then moved to an image scraping bot, The first version was very simple, It simply went to google images and downloaded every img tag that it could find. However, regardless of the target it scrapped only 21 images, the first being the google logo. This was because of lazy loading. To fix this I implemented an infinite scrolling loop that scrolled until it reached the end of the page or hit the target. But it still wasn’t near the target, after running the script without headless mode, I found out that the user agent string I gave it was of chrome 91, that was released in 2021, after switching to a newer version, chrome 135, it was able to complete it’s target but it was also downloading junk images like logos, icons or spacers that were present inside the search result. I spent 2 days fixing this problem, trying to point towards the image tags of the thubmnail images we see in google images. I wanted to write a code that would work everytime, that is why i couldn’t just point towards the ever changing classname of the img tag. I tried targeting imgs inside specific divs like img inside the div with role of listitems or img tags whose href attribute started with “/imgres” but it didnt worked. After a lot of tries I was able to get it right by targetting the img inside the div with role of main and whose dimensions are more that 100*100px. It worked like a charm. I then quickly made it in the form of a function and gave it 10 pokemons with target of 100 imgs each and boom I got 1000 images in total. I have also decided that labelling 15,100 images would take ridiculously long and the accuracy of the model would also be not accurate. So instead I am building a classification model and labelling it would be easy I am downloading the pokemon images inside the folder with their name. So now that I don’t have to worry about spending hours downloading or labelling them, I would use 500 images per pokemon and create a much accurate model. Currently I am running the script over all pokemons in gen 1, 151 in total, It has reached till Rattata, pokedex number - 19, that means images of 18 out of 151 pokemon are downloaded. I will keep the script running until all are complete and start training the classification model tomorrow."}, {"post_id": 8882, "ts": "2026-06-14T19:56:11Z", "hours": 1.9681, "text": "Heyy everyone I am currently building an android based pokedex app. The goal is simple point your phone’s camera towards a pokemon and it would use real time object detection to identify it and use pokeapi to fetch detailed stats about the pokemon. When I first thought of this project, I wanted to make a pokedex for all pokemon. However, some simple calculations gave me a reality check. To get a deceny accuracy, I aimed to train the object detection model at 100 images per pokemon, but there are 1,025 pokemon in total, that would mean more than 100k images to collect and label, it would take months if not years for me to do it alone, that’s why I narrowed down quickly to only generation 1 pokemons, around 151 pokemons and 15,100 images which still is a lot to collect and label manually. Instead of collecting images manually, I wanted to automate the process using the icrawler python framework. I initially tried using the built in google image crawler but it failed again and again, it returned no images, it wasnt able to detect the image tags, after some research I found out what was happening, google frequently changes their css class names to prevent bots from scraping and icrawler relied on hard coded class names. So I switched to the in built Bing image crawler and ran a test batch of 5 pokemons, it worked, I was happy to see images of pokemons being stored in my computer. But there was another roadblock, I had aimed at a total of 500 images (100 per pokemon) but it only managed to scrape around 30 images per pokemon. That’s only 30% of my target. To get past this I planning to build a better scraper using selenium and implement a dynamic scrolling loop to trigger lazy loaded images. I have attached today’s results, I got 156 images in total today and I hope for 500 tomorrow. Stay tuned for the next update"}]...
|
Title: Pokedex by @Ansh904 | Stardance
Devlogs:
H Title: Pokedex by @Ansh904 | Stardance
Devlogs:
Heyy everyone I am currently building an android based pokedex app. The goal is simple point your phone’s camera towards a pokemon and it would use real time object detection to identify it and use pokeapi to fetch detailed stats about the pokemon. When I first thought of this project, I wanted to make a pokedex for all pokemon. However, some simple calculations gave me a reality check. To get a deceny accuracy, I aimed to train the object detection model at 100 images per pokemon, but there are 1,025 pokemon in total, that would mean more than 100k images to collect and label, it would take months if not years for me to do it alone, that’s why I narrowed down quickly to only generation 1 pokemons, around 151 pokemons and 15,100 images which still is a lot to collect and label manually. Instead of collecting images manually, I wanted to automate the process using the icrawler python framework. I initially tried using the built in google image crawler but it failed again and again, it returned no images, it wasnt able to detect the image tags, after some research I found out what was happening, google frequently changes their css class names to prevent bots from scraping and icrawler relied on hard coded class names. So I switched to the in built Bing image crawler and ran a test batch of 5 pokemons, it worked, I was happy to see images of pokemons being stored in my computer. But there was another roadblock, I had aimed at a total of 500 images (100 per pokemon) but it only managed to scrape around 30 images per pokemon. That’s only 30% of my target. To get past this I planning to build a better scraper using selenium and implement a dynamic scrolling loop to trigger lazy loaded images. I have attached today’s results, I got 156 images in total today and I hope for 500 tomorrow. Stay tuned for the next update
Heyy Everyone Pokedex Devlog 2 !!! The selenium scraper is finally complete and it is working perfectly, except it hits a captcha some times, though it is rare. I started building this scraper without any knowledge of selenium. I started with a very basic bot that went to google and typed pokedex, I slowly added more features like using headless mode and WebDriverWait instead of hardcoded time delays. I once crashed my computer while printing the encrypted source code of the google result, XD. But I was also encountering captchas a lot so I switched to undetected_chromedriver and gave it a user agent string so that it won’t be flagged. My first bot was able to scrape the headers of the google search result. I then moved to an image scraping bot, The first version was very simple, It simply went to google images and downloaded every img tag that it could find. However, regardless of the target it scrapped only 21 images, the first being the google logo. This was because of lazy loading. To fix this I implemented an infinite scrolling loop that scrolled until it reached the end of the page or hit the target. But it still wasn’t near the target, after running the script without headless mode, I found out that the user agent string I gave it was of chrome 91, that was released in 2021, after switching to a newer version, chrome 135, it was able to complete it’s target but it was also downloading junk images like logos, icons or spacers that were present inside the search result. I spent 2 days fixing this problem, trying to point towards the image tags of the thubmnail images we see in google images. I wanted to write a code that would work everytime, that is why i couldn’t just point towards the ever changing classname of the img tag. I tried targeting imgs inside specific divs like img inside the div with role of listitems or img tags whose href attribute started with “/imgres” but it didnt worked. After a lot of tries I was able to get it right by targetting the img inside the div with role of main and whose dimensions are more that 100*100px. It worked like a charm. I then quickly made it in the form of a function and gave it 10 pokemons with target of 100 imgs each and boom I got 1000 images in total. I have also decided that labelling 15,100 images would take ridiculously long and the accuracy of the model would also be not accurate. So instead I am building a classification model and labelling it would be easy I am downloading the pokemon images inside the folder with their name. So now that I don’t have to worry about spending hours downloading or labelling them, I would use 500 images per pokemon and create a much accurate model. Currently I am running the script over all pokemons in gen 1, 151 in total, It has reached till Rattata, pokedex number - 19, that means images of 18 out of 151 pokemon are downloaded. I will keep the script running until all are complete and start training the classification model tomorrow.
ME Vs GOOGLE And I WON!!! Pokedex Devlog #3 Hey everyone I have been working on making a real life pokedex, one in which you just take the photo and get the stats of that pokemon on your screen. To achieve this I decided to train a yolov8n-cls model on images of pokemon. But getting those images were a nightmare due to GOOGLE!!! Fighting Google’s anti bot systems I built a custom scraper to scrape pokemon images from google images. But since the very start of the project, Google has been blocking me, it took a lot time for me, who had never touched selenium at that time, to bypass google’s anti bot systems. Since my laptop is very low end, I was using selenium in headless mode which triggered even more red flags for my bot. I switched from regular selenium to undetected_chromedriver , but still google’s system was flagging me with a big captcha that my little bot couldn’t solve. The main issue was that in headless mode, selenium runs a very small window size and it leaves clear machine tracks, I fixed that by using a larger window size and adding a user agent string that I chosen from a list of 10 different ua strings. Getting those Images Not being flagged by google was easy in comparison to this. Targetting the Images inside the search results was an absolute nightmare because instead of fixed static classes or ids google uses dynamic strings that change frequently, I wanted to write code that anyone can use anywhere and that is why couldn’t target those ever changing class names. I tried a lot things from targeting images inside nested divs to images inside divs with specific roles (eg: listitems ) or targeting images that have /imgres in their href attribute. But it took me an entire, with 6+ hours of coding and trying and a lot more researching and inspecting the elements of google images results but I found out that by targetting the images div with role of main with the images having a src or data-deffered attribute using the XPATH: //div[@role='main']//img[@data-deferred or @src] , I get the images which are inside the search results and I can then just use infinite scrolling to load them. The Results Knowing how to target those images, I absolutely destroyed google in the fight by making the scraper and using it to scrape a total of 74,718 images in one night without getting blocked a single time. My goal was was 500 images for each pokemon in generation 1, that is 75,500 total images, The scraper worked better than expected and I was just a 700 hundred images behind the goal. But even for those 700 images, the culprit was google not my little scraper, google didn’t have that many images for a few unpopular pokemon to fulfill my goals. What’s next? After winning the battle against google, I will use the images to train my model today, I already split those. Since my laptop is slow I will utilize google collab for training, using their own tool to train the model using the images they were trying so hard to hide XD….. and I really hope that scraping that many images is not illegal.
Pokedex Devlog #4 Heyyyyy Everyone!!! The training of the model is finally completed and I have made the first version of the Pokedex app , It captures an image using react-native-vision-camera , crops only the middle portion, resizes the image to match my model’s image size of 224*224 px , then gets the raw pixelbuffer, converts into rgb and normalises the values from 0-255 to 0-1.0 . This normalised pixel data is then fed to the model which predicts the class of the image. There were a lot of problems in making the app and there are still lot more to come , but here is everything I did: 1. An Ironical Training After collecting 75,000 images from my custom scraper, I zipped all of those images, and uploaded them directly to my colab notebook, uploading them took half an hour though😫 . I ran the training script at 50 epochs and training the model took another 8 hours . It was really ironical to see the model train in google colab on the same images that google was trying to hide from my little scraper. 2. A Successful Model After the training was completed, I had to test the model to see how it performed and whether I need to retrain it. The results shocked me, I gave the model 12 images from pintrest that it had never seen before and it predicted all of them correctly. The accuracy was way better than what I expect from a model trained on raw data. However, if needed I will clean the dataset and train again. 3. React native Camera Hell Everything was going very smoothly at this point, but I was never prepared for the next phase. I built a blank react native project, installed react-native-vision-camera and added a camera to the app.js, the camera was working, great, so I built a function to capture the photo and display it on the screen, that too worked. But the next step was to process the raw image pixel data into the format that my model required. I searched online, how to resize an image in react-native-vision-camera , the ai results told me to use the resizer package that comes with it. I spent three, three whole days!!! figuring why the resizer was not able to resize the image only to realise that it took a frame output not an image, so I rewrote the whole camera code again to use a live stream instead of capturing a photo. The resizer was working, I then normalized the pixel values while converting it into rgb format and fed the data to my model which outputed complete gibberish, all that work for nothing!!! 😭 I tried logging in the shape of input and output of the model, and the pixelformat of the bufffer and the raw pixel data. But all those were giving either undefined or 0. Nothing seemed to be working at this about, there was something seriously wrong with how I was processing the images. But then going through the docs of react-native-vision-camera , I saw that the image object that my previous capturing images code, that i had dumped, was outputting was a react-native-nitro-image object and it had an inbuilt resizeAsync function. I got frustrated again and rewrote the entire code again, this time with the previous capture photo logic. After cropping, resizing and getting the rgb data in to the required format, I tested the app with a photo of Gloom displayed on my laptop screen and it predicted it correctly. I was sooooo happyyy that it worked and is still working tho the accuracy is low due to pixel noises. What’s next? The hardest parts of the project are completed now, I just need to an api call, after the model predicts the pokemon to, get the details of the pokemon, like it’s type, pokedex entry and other things. The UI also sucks so I will work on that, I think I want to make it space theme, I don’t know how it would look but I will try. Till then… stay tuned!!!
Pokedex App is finally complete (mostly) Devlog #5 The app is now mostly complete, this phase of the project went very smoothly. Here is what I have added: After predicting the pokemon, The app sends a request to PokeAPI at the https://pokeapi.co/api/v2/{pokemon_name} endpoint and gets the detailed information of the pokemon. The information is displayed on a pokemon page which includes basic stats, the type of the pokemon, height , wight et. I have also worked a lot of ui, majority of the time was spent in designing the ui. However the home page still looks empty, it is just a div with ImageBackground and a logo with two buttons and 1 scanner icon that I designed in canva. I have also added typed backgrounds, so that every pokemon type has a seperate space themed background, they are mostly nebula images that i found in the NASA Gallery but boyyyy do i like the themes, they look soooo gooood!!!. I am so proud of myself…. What’s left? While the app is mostly ready, there a few things that I still need/want to add: A page displaying all the 151 pokemons in generation 1 A page that is displayed when there is no confident prediction A web version of the app, which would be pretty easy, I just need to change the uploading and capturing logic for it to work on web So hopefully this is my second last devlog for this project, stay tuned !!!!
Pokedex Mobile app is finally finished Pokedex Devlog #6 The Pokedex mobile app is now finished and I am working on finishing the web version of the app too. Here is what I have added: A NotConfident page that is displayed when the model can’t give a solid prediction about the image. A ’AllPokemon` page that displays all 151 pokemons from generation 1 in a flatList. I was using a a very messy state based navigation so I updated it to a Stack navigation. I also add a tab at the bottom of the Pokemon, Not confident and All Pokemon pages, though it sometimes overlaps the page content like that of the mewtwo picture. Create a seperate AppContext for the web version to load the model in the web. What’s left in the project before the ship? The Mobile app is finished, I just have to make the Camera and Upload components for the web version of the app and then the project would officially be completed. I was having my exams so I wasn’t able to code for a while :(
Cosmidex Web app is complete !!! Devlog #7 The web version of the Cosmidex app is also finished, FINALLYYY!!! Here is what I have added: Converted the tflite model to TFJS, took a lot of time, many libraries were deprecated, so I had to manually remove imports for those. Created seperate web components using .web.js to upload/capture images -> preprocess -> predict, my codebase for both the android and the web version of the app is still the same. Created seperate page components for the web and changed the design for the Pokemon Page and the Home page. What’s left? The app is mostly ready for it’s first ship, I have hit the 10 hr mark thats why I am uploading a devlog early, but there’s not much left to do, I know I have been saying this for the last 2 devlogs. Here’s what is left: Remove all the console logs that still linger in components for debug. The camera doesn’t close in the web version after capturing and predicting so I have to fix that. Probably change the home page for the android version to match the web. Add some cool animations to it. At last I want to push this project one bit further and add a capturing feature, like you capture a photo of a pokemon and it gets added to your caught pokemon in the pokedex and after capturing all 151 pokemon, you get a medal.
You can now get a Medal!!! Cosmidex Devlog #8 You will now get a medal everytime you catch all 151 pokemon in Generation 1!!! I have added the catch mechanishm Everytime you successfully predict a pokemon using your camera, gallery or from the Not Confident page, that pokemon would be added to your caught list. The caught list is stored in Local storage. Beside the catch mechanism here are other changes: Fixed the camera not closing issue on web by starting the Camera only when the Camera page is focused, otherwise closing it. Removed most of the unnecessay console.log() On android, the Tab was covering pokemon info on the Pokemon Page, to fix that, I made the tab shake toggled on that page, the user now needs to shake their Changed the Home page of android to match that of the web. Added a spawn tab that shows spawn locations along with methods to catch in the generation 1 games, ie- Pokemon Red, Blue and Yellow. Added the README file. Deployed the project on vercel properly, The project is now live on this link What’s next? I now want to add a daily Who’s that pokemon? Game, that would be so fun i guess. I also will add pokemon cries and show shiny versions of pokemons.
Cosmidex App is now finished !!!!! Finally, after 2 months, the app is finished and I am ready to ship!!! Here’s what I have added : Added Guess the Pokemon, It is addictive as hell, I used the imageTint property of the React native’s Image tag to make the whole silhouette of the pokemon black. After the user guesses it, it displays the orignal pokemon. Added cries, everytime you open the pokemon page for a pokemon, it’s latest or legacy cry plays once, you can toggle to not play it using the button on top right corner of the pokemon image. Added shiny, you can now toggle to show shiny or default sprites of the pokemon. That’s it, the project is finished :( I always want to add more, but I have to study for entrances.
Ships:
Cosmidex!!!! A real life multi-platform Pokedex app that can identify a pokemon from a captured photo or uploaded image. The app started with making a scraper using selenium, that I used to scrape around 75,000 images of all 151 pokemon from Google images. The scraper was hard because I didnt knew selenium, but I learned it and made it. After scraping, I trained a yolov8-cls model on google colab using the scraped dataset. Then I converted the model to tflite and made the first android version of the app. Getting the app to work was really painful because it required me to manipulate the image and it’s raw pixel data to transform into the input tensor. After this everything went smoothly and I added a lot of new things like a list of all Pokemon and the fallback page when the model is not confident. I also made a web version of the app using the .web.js extensions, the web version used a tfjs model. After that i have another whole lot of things like a “Guess the Pokemon” game, shinies, a catch feature such that everytime you correctly predict a pokemon, it gets added to your caught pokemon list that is stored in local storage. The app also has shinies and you can toggle to hear pokemon cries. I am really proud of how the ui turned out, the space + pokemon theme really really looks very good, I used images from the nasa image library as backgrounds. On the Pokemon page, which displays the info for a specific pokemon including types, sprite, pokedex text (flavor text), base stats, evolutions and spawn info, the background changes dynamcally based on the type, I spent a lot of time finding those backgrounds, they perfectly match the pokemon typings. All other pages have specific backgrounds too. In the end I really like how the app started from a small side project to taking nearly 2 months to finish. I really want to add more features, but I lack the time cuz I have to study too for entrances, but I surely will add them in the future....
|
1793861409.6298273
|
1793947809.6298273
|
|
18515
|
My awesome macropad! by @KamilIssah | Stardance
|
KamilIssah
|
0
|
3.48
|
0
|
[]
|
[{"post_id": 20996, "ts": "202 [{"post_id": 20996, "ts": "2026-07-02T18:53:25Z", "hours": 2.0503, "text": "Just started the case for my macropad."}, {"post_id": 20434, "ts": "2026-07-02T00:57:47Z", "hours": 1.4333, "text": "Just finished the PCB for my 4 - button macropad."}]...
|
Title: My awesome macropad! by @KamilIssah | Stard Title: My awesome macropad! by @KamilIssah | Stardance
Devlogs:
Just finished the PCB for my 4 - button macropad.
Just started the case for my macropad....
|
1793461772.8670042
|
1794066572.8670042
|
|
18516
|
Untitled project by @Stantastic | Stardance
|
Stantastic
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @Stantastic | Stardance
|
1793541022.7717655
|
1794145822.7717655
|
|
18517
|
Spielo by @mxcrx | Stardance
|
mxcrx
|
0
|
25.84
|
0
|
[]
|
[{"post_id": 12123, "ts": "202 [{"post_id": 12123, "ts": "2026-06-19T20:11:46Z", "hours": 4.24, "text": "Devlog #2 TL;DR Friends can now be invited directly from a room. A toast notification allows accepting or declining the invite. A new admin page was added to manage users, including role changes and banning. Spielo is now publicly available on GitHub , and a demo version is online. Direct Friend Invites I implemented a feature that allows inviting friends directly from within a room. For this, I created a new socket event invite_friend , which is emitted by the client when a button is pressed. The button only appears if the friend is online and the user is currently in a room, since the friend overlay can be accessed both from the lobby and from within a room. On the server side, several validations are performed: rate limiting (3 invites per 5 seconds) user must be online user must not already be in the same room If all conditions are met, the invite is sent via the friend_invite event. The sender also receives a confirmation that the invitation was successfully delivered. The receiving user sees a toast notification ( inviteToastContainer ) that stays visible for 15 seconds. They can either accept or decline the invite. Accepting the invite automatically moves them into the room, while declining simply closes the notification. This significantly improves usability, as users no longer need to manually share room codes. Admin Page I created a new admin page to manage all registered users. The admin section is placed in a separate admin folder with its own index.html , keeping it isolated from the main client. This improves the overall project structure and separation of concerns. In userService.js , I added three asynchronous functions: updateUser(userId, newRole, isBanned) getAllUsers() getBannedStatus(userId) The admin page includes a simple authentication check using a JWT token and user ID stored in localStorage . The server verifies whether the user has the admin role before returning sensitive data. The client renders a table sorted by created_at . It displays: user_id username role is_banned Additionally, two actions are available: toggle role between user and admin ban users by setting is_banned A protection mechanism was added to prevent users from modifying their own account (e.g., self-demotion or self-ban). Ban Check To make is_banned effective, a ban check was added during login. Users with a banned account are now prevented from logging in. Additionally, if a user is already authenticated (valid token stored in localStorage ), the server rejects the token if the account has been banned. However, automatic logout for already active sessions still needs to be implemented. Documentation, GitHub & Demo Website The remaining time was spent improving documentation. The README was rewritten (a preview GIF is still missing), and the repository was made public. A separate demo environment was also created to avoid exposing my private one for testing purposes."}, {"post_id": 11478, "ts": "2026-06-18T19:13:52Z", "hours": 21.6006, "text": "Devlog #1 Overview Spielo is a web-based multiplayer gaming platform focused on real-time browser games, starting with an UNO-styled card game. The goal of the project is to create a smooth, fast and social multiplayer experience where players can join games instantly, interact with others and track their progress over time. The system includes a custom backend with real-time socket communication, a database for persistent data such as user accounts and match history and a responsive frontend. In the future, Spielo is intended to grow beyond a single game into multiple games with even more features. Initial development period This initial development period phase focused on building the core foundation of the platform and turning an early prototype into a functional multiplayer system with user accounts, stable gameplay and basic social features. Core Game and multiplayer system The first major step was implementing the UNO-style game mechanics and establishing a working real-time multiplayer system. This included room management, turn handling and basic game flow logic. The socket-based architecture was refined to ensure stable synchronization between players and proper handling of edge cases such as disconnects and reconnects. Game state management was also improved to prevent inconsistent behavior during active matches. Authentication and user system An user system was introduced with authentication and authorization for both registered and guest users. Input validation and error handling were improved to make login and registration more stable and secure. User profiles were added, allowing players to manage and display their identity within Spielo. This also laid the foundation for persistent user-related features. Match tracking A match history system was implemented and connected to the database. This allows completed games to be stored and later used for statistics or profile-related features. Friends and social features A friends system was added, enabling users to search for others, send and manage friend requests and maintain a list of connected players. This required both backend services and frontend UI components, as well as database integration for persistent relationships. Additionally, profile updates are now propagated so that friends automatically see updated user information in real time. Gameplay improvements and edge cases Several improvements were made to refine gameplay behavior and fix edge case: improved handling of UNO calls and challenges, including timing validation fixed incorrect win handling in single-player edge cases added better control for wild card color selection, including the ability to cancel a selection improved game flow logic and turn handling User experience and interface improvements The frontend was significantly refined to improve usability across devices: responsive design improvements for mobile and large screens collapsible chat interface for better space usage improved scrolling behavior on mobile devices cleaner status messaging using temporary popup notifications instead of persistent headers improved animations for winner display and game events better handling of forms and inputs (e.g. Enter-to-submit support) Bug fixes and stability improvements Multiple bugs were fixed to improve stability and consistency: logout behavior corrected guest user restrictions enforced properly display name inconsistencies resolved UI spacing and layout issues fixed error handling improved in authentication and game systems Summary In this initial development phase, Spielo evolved from a basic multiplayer prototype into a structured and feature-complete foundation. The project now includes a working real-time game engine, persistent user system, match tracking and early social features, along with a significantly improved user interface and stability layer."}]...
|
Title: Spielo by @mxcrx | Stardance
Devlogs:
Devl Title: Spielo by @mxcrx | Stardance
Devlogs:
Devlog #1 Overview Spielo is a web-based multiplayer gaming platform focused on real-time browser games, starting with an UNO-styled card game. The goal of the project is to create a smooth, fast and social multiplayer experience where players can join games instantly, interact with others and track their progress over time. The system includes a custom backend with real-time socket communication, a database for persistent data such as user accounts and match history and a responsive frontend. In the future, Spielo is intended to grow beyond a single game into multiple games with even more features. Initial development period This initial development period phase focused on building the core foundation of the platform and turning an early prototype into a functional multiplayer system with user accounts, stable gameplay and basic social features. Core Game and multiplayer system The first major step was implementing the UNO-style game mechanics and establishing a working real-time multiplayer system. This included room management, turn handling and basic game flow logic. The socket-based architecture was refined to ensure stable synchronization between players and proper handling of edge cases such as disconnects and reconnects. Game state management was also improved to prevent inconsistent behavior during active matches. Authentication and user system An user system was introduced with authentication and authorization for both registered and guest users. Input validation and error handling were improved to make login and registration more stable and secure. User profiles were added, allowing players to manage and display their identity within Spielo. This also laid the foundation for persistent user-related features. Match tracking A match history system was implemented and connected to the database. This allows completed games to be stored and later used for statistics or profile-related features. Friends and social features A friends system was added, enabling users to search for others, send and manage friend requests and maintain a list of connected players. This required both backend services and frontend UI components, as well as database integration for persistent relationships. Additionally, profile updates are now propagated so that friends automatically see updated user information in real time. Gameplay improvements and edge cases Several improvements were made to refine gameplay behavior and fix edge case: improved handling of UNO calls and challenges, including timing validation fixed incorrect win handling in single-player edge cases added better control for wild card color selection, including the ability to cancel a selection improved game flow logic and turn handling User experience and interface improvements The frontend was significantly refined to improve usability across devices: responsive design improvements for mobile and large screens collapsible chat interface for better space usage improved scrolling behavior on mobile devices cleaner status messaging using temporary popup notifications instead of persistent headers improved animations for winner display and game events better handling of forms and inputs (e.g. Enter-to-submit support) Bug fixes and stability improvements Multiple bugs were fixed to improve stability and consistency: logout behavior corrected guest user restrictions enforced properly display name inconsistencies resolved UI spacing and layout issues fixed error handling improved in authentication and game systems Summary In this initial development phase, Spielo evolved from a basic multiplayer prototype into a structured and feature-complete foundation. The project now includes a working real-time game engine, persistent user system, match tracking and early social features, along with a significantly improved user interface and stability layer.
Devlog #2 TL;DR Friends can now be invited directly from a room. A toast notification allows accepting or declining the invite. A new admin page was added to manage users, including role changes and banning. Spielo is now publicly available on GitHub , and a demo version is online. Direct Friend Invites I implemented a feature that allows inviting friends directly from within a room. For this, I created a new socket event invite_friend , which is emitted by the client when a button is pressed. The button only appears if the friend is online and the user is currently in a room, since the friend overlay can be accessed both from the lobby and from within a room. On the server side, several validations are performed: rate limiting (3 invites per 5 seconds) user must be online user must not already be in the same room If all conditions are met, the invite is sent via the friend_invite event. The sender also receives a confirmation that the invitation was successfully delivered. The receiving user sees a toast notification ( inviteToastContainer ) that stays visible for 15 seconds. They can either accept or decline the invite. Accepting the invite automatically moves them into the room, while declining simply closes the notification. This significantly improves usability, as users no longer need to manually share room codes. Admin Page I created a new admin page to manage all registered users. The admin section is placed in a separate admin folder with its own index.html , keeping it isolated from the main client. This improves the overall project structure and separation of concerns. In userService.js , I added three asynchronous functions: updateUser(userId, newRole, isBanned) getAllUsers() getBannedStatus(userId) The admin page includes a simple authentication check using a JWT token and user ID stored in localStorage . The server verifies whether the user has the admin role before returning sensitive data. The client renders a table sorted by created_at . It displays: user_id username role is_banned Additionally, two actions are available: toggle role between user and admin ban users by setting is_banned A protection mechanism was added to prevent users from modifying their own account (e.g., self-demotion or self-ban). Ban Check To make is_banned effective, a ban check was added during login. Users with a banned account are now prevented from logging in. Additionally, if a user is already authenticated (valid token stored in localStorage ), the server rejects the token if the account has been banned. However, automatic logout for already active sessions still needs to be implemented. Documentation, GitHub & Demo Website The remaining time was spent improving documentation. The README was rewritten (a preview GIF is still missing), and the repository was made public. A separate demo environment was also created to avoid exposing my private one for testing purposes....
|
1793958949.7561688
|
1794563749.7561688
|
|
18518
|
Real-Life HUD by @floatie_45 | Stardance
|
floatie_45
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Real-Life HUD by @floatie_45 | Stardance
|
1793321297.3011532
|
1793926097.3011532
|
|
18519
|
PorOS by @suitedn0ob | Stardance
|
suitedn0ob
|
0
|
1.17
|
0
|
[]
|
[{"post_id": 24633, "ts": "202 [{"post_id": 24633, "ts": "2026-07-08T11:04:45Z", "hours": 1.1653, "text": "First devlog. Spent a little over an hour to implement the basic visuals. Took strong inspirations from GNOME: a top bar for displaying date/time, network status, battery, and quick settings and a slide-down activities menu to display the app grid. Could’ve done it a bit faster, though, but now that the foundations are in place I could move on to implementing the applications themselves."}]...
|
Title: PorOS by @suitedn0ob | Stardance
Devlogs:
Title: PorOS by @suitedn0ob | Stardance
Devlogs:
First devlog. Spent a little over an hour to implement the basic visuals. Took strong inspirations from GNOME: a top bar for displaying date/time, network status, battery, and quick settings and a slide-down activities menu to display the app grid. Could’ve done it a bit faster, though, but now that the foundations are in place I could move on to implementing the applications themselves....
|
1793335935.1254237
|
1793940735.1254237
|
|
18520
|
Project OrbitClean by @jona_noack | Stardance
|
jona_noack
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Project OrbitClean by @jona_noack | Stardan Title: Project OrbitClean by @jona_noack | Stardance...
|
1793818238.226543
|
1794682238.226543
|
|
18521
|
My very own WebOS by @banumariusalexandru | Starda My very own WebOS by @banumariusalexandru | Stardance...
|
banumariusalexandru
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My very own WebOS by @banumariusalexandru | Title: My very own WebOS by @banumariusalexandru | Stardance...
|
1793371974.8387828
|
1793976774.8387828
|
|
18522
|
My awesome macropad! by @Error404 | Stardance
|
Error404
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Error404 | Stardan Title: My awesome macropad! by @Error404 | Stardance...
|
1793998122.3052168
|
1794602922.3052168
|
|
18523
|
Untitled project by @doruk | Stardance
|
doruk
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @doruk | Stardance
|
1793894039.5729017
|
1794498839.5729017
|
|
18524
|
My very own WebOS by @bluevelvet | Stardance
|
bluevelvet
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My very own WebOS by @bluevelvet | Stardanc Title: My very own WebOS by @bluevelvet | Stardance...
|
1793864954.906235
|
1794469754.906235
|
|
18525
|
My very own WebOS by @Rishans | Stardance
|
Rishans
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My very own WebOS by @Rishans | Stardance
|
1793432988.0735736
|
1794037788.0735736
|
|
18526
|
typecoder by @tosterabgx | Stardance
|
tosterabgx
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: typecoder by @tosterabgx | Stardance
|
1793937121.184674
|
1794801121.184674
|
|
18527
|
My very own WebOS by @nuvo | Stardance
|
nuvo
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My very own WebOS by @nuvo | Stardance
|
1793314316.6259117
|
1793919116.6259117
|
|
18528
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1793944467.1099918
|
1794808467.1099918
|
|
18529
|
Bonga Bonga by @shreya_m | Stardance
|
shreya_m
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Bonga Bonga by @shreya_m | Stardance
|
1793408060.2620888
|
1794012860.2620888
|
|
18530
|
My awesome macropad! by @lillooch | Stardance
|
lillooch
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @lillooch | Stardan Title: My awesome macropad! by @lillooch | Stardance...
|
1793980385.6498969
|
1794585185.6498969
|
|
18531
|
My first slack bot! by @leok8239 | Stardance
|
leok8239
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @leok8239 | Stardanc Title: My first slack bot! by @leok8239 | Stardance...
|
1794012882.0712636
|
1794617682.0712636
|
|
18532
|
Frictionless by @g8mero | Stardance
|
g8mero
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Frictionless by @g8mero | Stardance
|
1793915509.1617413
|
1794779509.1617413
|
|
18533
|
My awesome macropad! by @MayaBuildsStuff | Stardan My awesome macropad! by @MayaBuildsStuff | Stardance...
|
MayaBuildsStuff
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @MayaBuildsStuff | Title: My awesome macropad! by @MayaBuildsStuff | Stardance...
|
1793285711.9146245
|
1793890511.9146245
|
|
18534
|
Orion-os by @AshishPatel | Stardance
|
AshishPatel
|
0
|
6.76
|
0
|
[]
|
[{"post_id": 10442, "ts": "202 [{"post_id": 10442, "ts": "2026-06-17T05:15:37Z", "hours": 6.7614, "text": "Devlog #1: Laying the Foundations of Orion-OS What I Accomplished today: Workspace Initialization: Set up the full local development environment inside VS Code to begin building the operating system framework from scratch. Core Structural Setup: Designed and structured the foundational codebase architecture, mapping out how the core software components will interact. Logic Framework: Wrote and organized the initial background logic scripts, laying down the groundwork necessary for executing deeper system tasks in future updates."}]...
|
Title: Orion-os by @AshishPatel | Stardance
Devlo Title: Orion-os by @AshishPatel | Stardance
Devlogs:
Devlog #1: Laying the Foundations of Orion-OS What I Accomplished today: Workspace Initialization: Set up the full local development environment inside VS Code to begin building the operating system framework from scratch. Core Structural Setup: Designed and structured the foundational codebase architecture, mapping out how the core software components will interact. Logic Framework: Wrote and organized the initial background logic scripts, laying down the groundwork necessary for executing deeper system tasks in future updates....
|
1793969717.1432896
|
1794833717.1432896
|
|
18535
|
My awesome macropad! by @Waffles | Stardance
|
Waffles
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Waffles | Stardanc Title: My awesome macropad! by @Waffles | Stardance...
|
1793461938.0632362
|
1794066738.0632362
|
|
18536
|
FPV RC Car by @tfles28 | Stardance
|
tfles28
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: FPV RC Car by @tfles28 | Stardance
|
1793559504.8456051
|
1794164304.8456051
|
|
18537
|
My awesome macropad! by @Demee | Stardance
|
Demee
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Demee | Stardance
|
1793965728.378391
|
1794570528.378391
|
|
18538
|
Rym by @wilrakov | Stardance
|
wilrakov
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Rym by @wilrakov | Stardance
|
1793868570.7306664
|
1794732570.7306664
|
|
18539
|
Untitled project by @anniika | Stardance
|
anniika
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @anniika | Stardance
|
1793886902.8690565
|
1794491702.8690565
|
|
18540
|
My awesome macropad! by @nuvo | Stardance
|
nuvo
|
0
|
2.59
|
0
|
[]
|
[{"post_id": 12413, "ts": "202 [{"post_id": 12413, "ts": "2026-06-20T08:02:05Z", "hours": 1.7706, "text": "i have arranged all the components and routed them i learned how to use vias for the first time but although the app crashed before i save the PCB design i really think it was a valuable learning experience ."}, {"post_id": 11239, "ts": "2026-06-18T11:57:46Z", "hours": 0.8161, "text": "just finished the schematics looking for some feedback :)"}]...
|
Title: My awesome macropad! by @nuvo | Stardance
Title: My awesome macropad! by @nuvo | Stardance
Devlogs:
just finished the schematics looking for some feedback :)
i have arranged all the components and routed them i learned how to use vias for the first time but although the app crashed before i save the PCB design i really think it was a valuable learning experience ....
|
1793335864.4860342
|
1793940664.4860342
|
|
18541
|
My own Programming Editor by @_MrLuki | Stardance
|
_MrLuki
|
1
|
9.3
|
89
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-17T18:16:54Z", "hours": 9.0, "multiplier": 9.65, "payout": 89, "blessing": "neutral", "text": "Have you ever had the problem that you couldn’t find an editor to code a simple version of BASIC in? Yeah, you won’t have that problem again because I created just the right tool for you! You can easily write code with color-highlighted syntax and full-on debug mode. How? Press F1 to enter debug and press any key to move one line further. During this, the editor will show the value of all assigned variables. You can also simply run the program when pressing TAB and the program will execute immediately. I have also added a menu to quickly save, edit the filename, or save & quit. For further info, please check out my readme.md. Thank you for reviewing this project and I would love a good rating.", "repo": "https://github.com/MrLuki2727/OwnLanguage", "demo": "https://github.com/MrLuki2727/OwnLanguage/releases/tag/v2.0"}]...
|
[{"post_id": 10818, "ts": "202 [{"post_id": 10818, "ts": "2026-06-17T19:14:50Z", "hours": 0.3042, "text": "Video Guide Here is a quick step-through video guide:"}, {"post_id": 10670, "ts": "2026-06-17T15:08:30Z", "hours": 0.7097, "text": "Just when I thought everything was going according to plan my code wanted to prove me wrong 💀💀🤣🤣 There seems to be a massive bug when using Debug mode when you have scrolled a bit so scroll_offset != 0 ; then this bug occurs even though I thought I have implemented scroll offset in the start_debug_mode(); . Now the good news. I have fixed annoying bugs with the writing in the editor now you can’t skip after a \\0 and can’t write mid editor which has broken everything previously. Here is the screenshot of the debug scroll bug:"}, {"post_id": 10540, "ts": "2026-06-17T09:45:50Z", "hours": 2.5069, "text": "this took way too long 💀 I added debug mode - press F1 and the interpreter steps through your program line by line. current line gets a < marker, all assigned variables are shown live on the right side. Errors are Highlighted Red and the end is highlighted Green. I am pretty proud of that I also spent an embarrassing amount of time chasing a bug where deleting a character would make the line number of the line below disappear. tried everything like textbackground resets, gotoxy fixes, cursor position saving, redraw order changes - none of it worked. turns out I just forgot to reset debugmode back to 0 after leaving debug mode. This simple Problem stole 1h of by life 💀 I have also updated the README with debug mode docs, config.txt explanation and swapped the install section for a direct link to the releases page."}, {"post_id": 10087, "ts": "2026-06-16T17:50:43Z", "hours": 1.2731, "text": "ran out of new features so I did what every developer does at this point - stared at the editor until things started bothering me 🤣. I refined the design and made it more colorful. then I noticed that scrolling was never truly implemented. scroll_offset existed, was passed around, just never actually updated anywhere 💀 int scroll_offset = 0; scrolling should work now. I sure hope so. then I took a look at the menu and decided to rewrite it completely because I didn’t like how you interacted with it. the new version has proper feedback when saving or changing the filename and a quick confirmation if you really want to quit or stay. feel free to test it in the new pre-release: github.com/MrLuki2727/OwnLanguage/releases/tag/v1.1"}, {"post_id": 9847, "ts": "2026-06-16T09:35:19Z", "hours": 0.9478, "text": "Previously the editor always opened Code.lu ( this was hardcodet with #define FILENAME ) Now the last opened filename gets written to config.txt on save and is loaded on startup. fgets pulls the name, strcspn strips the newline. (Revolutionary tech there 🔥🔥🔥) After running a program or opening the menu the cursor was landing somewhere random on screen. I fixed it by saving x and y with getxy() before switching modes, and restoring it with gotoxy() .Then everithing is redrawn. The cursor now comes back exactly where you left it. I thought this was implemented vom the start but it turns out it was not right 💀. Added a proper README with a platform support table (Windows only) , step by step build instructions for CLion."}, {"post_id": 9417, "ts": "2026-06-15T19:30:40Z", "hours": 0.8047, "text": "Syntax highlighting is here! Honestly thought this would take way longer than it did. The approach is simple: walk through the string character by character, check what type the next token is (keyword, variable, number, operator, bracket) and set the color before printing. The actual characters are printed 1:1 so if there are 17 spaces there will be printed 17. Color changes are handled by a prebuilt textColor(COLOUR); function that just sets the console color before the next print. Clean and simple. Known bugs I definitely know about and totally plan to fix (eventually): – Can’t write mid-line because of a \\0 at the start of the string 💀 – Pressing delete at the end of a line removes the entire line (is this a bug or a feature? I’m choosing to call it a feature for now) Next up: fixing the actual bugs. Probably."}, {"post_id": 9161, "ts": "2026-06-15T10:56:52Z", "hours": 1.0142, "text": "Added ELSE and WHILE - the language is getting dangerous 💀🤣 ELSE was actually pretty simple: after an IF, just check in the next line see if it says “ELSE”, skip the keyword and execute whatever comes after. Done. Took longer to think about than to code. WHILE was a completely different. After a bit of thinking I came up that WHILE is basically just IF + GOTO combined. If the condition is true, keep going. If false, i run through the program array for the matching ENDWHILE (counting WHILEs so you it works with more WHILES. ENDWHILE does the reverse - searches backwards for its WHILE and jumps back. Next goal : Synax highlighting"}, {"post_id": 9140, "ts": "2026-06-15T09:34:04Z", "hours": 1.4203, "text": "I completely rebuilt the drawing system for the editor, making it efficient enough for my next goal: syntax highlighting. Now only the line where code was changed gets refreshed, instead of redrawing the entire screen every keystroke. The whole refreshing should be working right know haven’t noticed any bugs. (yet 🤣)"}, {"post_id": 8862, "ts": "2026-06-14T19:11:26Z", "hours": 0.5647, "text": "I started working on the editor yesterday. I was so focused on the code that I didn’t notice the whole logging system wasn’t working because I forgot to include the plugin. I just noticed and fixed the problem. Right now, I am mostly working on syntax highlighting (I don’t really know how to do that yet 💀), but in the last 30 minutes, I finished a basic menu to save, quit, and edit the filename. The editor isn’t really based on the BASIC language. Instead, it’s a mix of commands from different languages that I found cool, which allowed me to create my own custom language mix. I have already finished a basic visual style for the editor (unfortunately, it still has some bugs 😂) as well as a simple syntax checker that somehow works. I also wrote a simple program with a print output, and everything seems to work perfectly.”"}]...
|
Title: My own Programming Editor by @_MrLuki | Sta Title: My own Programming Editor by @_MrLuki | Stardance
Devlogs:
I started working on the editor yesterday. I was so focused on the code that I didn’t notice the whole logging system wasn’t working because I forgot to include the plugin. I just noticed and fixed the problem. Right now, I am mostly working on syntax highlighting (I don’t really know how to do that yet 💀), but in the last 30 minutes, I finished a basic menu to save, quit, and edit the filename. The editor isn’t really based on the BASIC language. Instead, it’s a mix of commands from different languages that I found cool, which allowed me to create my own custom language mix. I have already finished a basic visual style for the editor (unfortunately, it still has some bugs 😂) as well as a simple syntax checker that somehow works. I also wrote a simple program with a print output, and everything seems to work perfectly.”
I completely rebuilt the drawing system for the editor, making it efficient enough for my next goal: syntax highlighting. Now only the line where code was changed gets refreshed, instead of redrawing the entire screen every keystroke. The whole refreshing should be working right know haven’t noticed any bugs. (yet 🤣)
Added ELSE and WHILE - the language is getting dangerous 💀🤣 ELSE was actually pretty simple: after an IF, just check in the next line see if it says “ELSE”, skip the keyword and execute whatever comes after. Done. Took longer to think about than to code. WHILE was a completely different. After a bit of thinking I came up that WHILE is basically just IF + GOTO combined. If the condition is true, keep going. If false, i run through the program array for the matching ENDWHILE (counting WHILEs so you it works with more WHILES. ENDWHILE does the reverse - searches backwards for its WHILE and jumps back. Next goal : Synax highlighting
Syntax highlighting is here! Honestly thought this would take way longer than it did. The approach is simple: walk through the string character by character, check what type the next token is (keyword, variable, number, operator, bracket) and set the color before printing. The actual characters are printed 1:1 so if there are 17 spaces there will be printed 17. Color changes are handled by a prebuilt textColor(COLOUR); function that just sets the console color before the next print. Clean and simple. Known bugs I definitely know about and totally plan to fix (eventually): – Can’t write mid-line because of a \0 at the start of the string 💀 – Pressing delete at the end of a line removes the entire line (is this a bug or a feature? I’m choosing to call it a feature for now) Next up: fixing the actual bugs. Probably.
Previously the editor always opened Code.lu ( this was hardcodet with #define FILENAME ) Now the last opened filename gets written to config.txt on save and is loaded on startup. fgets pulls the name, strcspn strips the newline. (Revolutionary tech there 🔥🔥🔥) After running a program or opening the menu the cursor was landing somewhere random on screen. I fixed it by saving x and y with getxy() before switching modes, and restoring it with gotoxy() .Then everithing is redrawn. The cursor now comes back exactly where you left it. I thought this was implemented vom the start but it turns out it was not right 💀. Added a proper README with a platform support table (Windows only) , step by step build instructions for CLion.
ran out of new features so I did what every developer does at this point - stared at the editor until things started bothering me 🤣. I refined the design and made it more colorful. then I noticed that scrolling was never truly implemented. scroll_offset existed, was passed around, just never actually updated anywhere 💀 int scroll_offset = 0; scrolling should work now. I sure hope so. then I took a look at the menu and decided to rewrite it completely because I didn’t like how you interacted with it. the new version has proper feedback when saving or changing the filename and a quick confirmation if you really want to quit or stay. feel free to test it in the new pre-release: github.com/MrLuki2727/OwnLanguage/releases/tag/v1.1
this took way too long 💀 I added debug mode - press F1 and the interpreter steps through your program line by line. current line gets a < marker, all assigned variables are shown live on the right side. Errors are Highlighted Red and the end is highlighted Green. I am pretty proud of that I also spent an embarrassing amount of time chasing a bug where deleting a character would make the line number of the line below disappear. tried everything like textbackground resets, gotoxy fixes, cursor position saving, redraw order changes - none of it worked. turns out I just forgot to reset debugmode back to 0 after leaving debug mode. This simple Problem stole 1h of by life 💀 I have also updated the README with debug mode docs, config.txt explanation and swapped the install section for a direct link to the releases page.
Just when I thought everything was going according to plan my code wanted to prove me wrong 💀💀🤣🤣 There seems to be a massive bug when using Debug mode when you have scrolled a bit so scroll_offset != 0 ; then this bug occurs even though I thought I have implemented scroll offset in the start_debug_mode(); . Now the good news. I have fixed annoying bugs with the writing in the editor now you can’t skip after a \0 and can’t write mid editor which has broken everything previously. Here is the screenshot of the debug scroll bug:
Video Guide Here is a quick step-through video guide:
Ships:
Have you ever had the problem that you couldn’t find an editor to code a simple version of BASIC in? Yeah, you won’t have that problem again because I created just the right tool for you! You can easily write code with color-highlighted syntax and full-on debug mode. How? Press F1 to enter debug and press any key to move one line further. During this, the editor will show the value of all assigned variables. You can also simply run the program when pressing TAB and the program will execute immediately. I have also added a menu to quickly save, edit the filename, or save & quit. For further info, please check out my readme.md. Thank you for reviewing this project and I would love a good rating....
|
1793879556.5562754
|
1793965956.5562754
|
|
18542
|
TriCore by @JSJ | Stardance
|
JSJ
|
0
|
2.28
|
0
|
[]
|
[{"post_id": 10509, "ts": "202 [{"post_id": 10509, "ts": "2026-06-17T08:13:10Z", "hours": 2.2786, "text": "Devlog #1 — TriCore Started working on TriCore today. The idea behind it is pretty simple: almost every computer uses binary (0s and 1s), so I wanted to see what happens when you start exploring ternary instead, where numbers are represented using 0, 1, and 2. Today was mostly about getting the foundation in place. So far I’ve built: A decimal → ternary converter A ternary → decimal converter A binary vs ternary comparison tool The comparison tool ended up being more interesting than I expected. While testing different numbers, I noticed that ternary representations can sometimes use fewer digits than binary ones. For example: 64 Binary = 1000000 Ternary = 2101 Seeing that made me want to dig deeper into how ternary systems actually work and why people have researched them in the past. I also spent some time cleaning up the repository and writing documentation so the project doesn’t immediately become a mess as I add more features. Next, I want to look into: Balanced ternary Ternary arithmetic Logic gates Interactive simulations Right now TriCore is pretty small, but the goal is to slowly turn it into a toolkit for experimenting with ternary computing concepts rather than just a collection of conversion scripts. We’ll see where it goes."}]...
|
Title: TriCore by @JSJ | Stardance
Devlogs:
Devlo Title: TriCore by @JSJ | Stardance
Devlogs:
Devlog #1 — TriCore Started working on TriCore today. The idea behind it is pretty simple: almost every computer uses binary (0s and 1s), so I wanted to see what happens when you start exploring ternary instead, where numbers are represented using 0, 1, and 2. Today was mostly about getting the foundation in place. So far I’ve built: A decimal → ternary converter A ternary → decimal converter A binary vs ternary comparison tool The comparison tool ended up being more interesting than I expected. While testing different numbers, I noticed that ternary representations can sometimes use fewer digits than binary ones. For example: 64 Binary = 1000000 Ternary = 2101 Seeing that made me want to dig deeper into how ternary systems actually work and why people have researched them in the past. I also spent some time cleaning up the repository and writing documentation so the project doesn’t immediately become a mess as I add more features. Next, I want to look into: Balanced ternary Ternary arithmetic Logic gates Interactive simulations Right now TriCore is pretty small, but the goal is to slowly turn it into a toolkit for experimenting with ternary computing concepts rather than just a collection of conversion scripts. We’ll see where it goes....
|
1793292474.8435745
|
1793897274.8435745
|
|
18543
|
Epic Website Remodel by @RagtagSphere969 | Stardan Epic Website Remodel by @RagtagSphere969 | Stardance...
|
RagtagSphere969
|
0
|
0.33
|
0
|
[]
|
[{"post_id": 10302, "ts": "202 [{"post_id": 10302, "ts": "2026-06-16T23:06:39Z", "hours": 0.3322, "text": "Starting off with a cool python screen"}]...
|
Title: Epic Website Remodel by @RagtagSphere969 | Title: Epic Website Remodel by @RagtagSphere969 | Stardance
Devlogs:
Starting off with a cool python screen...
|
1793505411.6185415
|
1794110211.6185415
|
|
18544
|
A dimension rifting game by @fobby | Stardance
|
fobby
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: A dimension rifting game by @fobby | Starda Title: A dimension rifting game by @fobby | Stardance...
|
1793278263.3008866
|
1793883063.3008866
|
|
18545
|
Pixel Chess by @UltimateForm | Stardance
|
UltimateForm
|
0
|
2.2
|
0
|
[]
|
[{"post_id": 9437, "ts": "2026 [{"post_id": 9437, "ts": "2026-06-15T19:57:00Z", "hours": 0.8386, "text": "worked on legal moves and pieces resetting after loss or win"}, {"post_id": 8975, "ts": "2026-06-14T22:51:19Z", "hours": 0.6594, "text": "started working on basic game logic & piece nodes + board interactability"}, {"post_id": 8693, "ts": "2026-06-14T13:18:44Z", "hours": 0.7036, "text": "designed base textures using LibreSprite, started working on 2d camera stuff in Godot (camera shake, noise etc.)"}]...
|
Title: Pixel Chess by @UltimateForm | Stardance
D Title: Pixel Chess by @UltimateForm | Stardance
Devlogs:
designed base textures using LibreSprite, started working on 2d camera stuff in Godot (camera shake, noise etc.)
started working on basic game logic & piece nodes + board interactability
worked on legal moves and pieces resetting after loss or win...
|
1793537546.0585341
|
1794142346.0585341
|
|
18546
|
MINTS by @ArjunCodess | Stardance
|
ArjunCodess
|
1
|
3.76
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-17T07:42:01Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Built a reproducible mechanistic interpretability pipeline for genomic transformers. It extracts model circuits, runs activation patching, and tests biological motif detection. The biggest challenge was building reliable experiments without overclaiming results. I’m proud of the scientific rigor, reproducibility, and honest negative findings. Run python main.py to test everything.", "repo": "https://github.com/ArjunCodess/MINTS", "demo": "https://github.com/ArjunCodess/MINTS/blob/main/paper/main.pdf"}]...
|
[{"post_id": 11174, "ts": "202 [{"post_id": 11174, "ts": "2026-06-18T08:34:44Z", "hours": 0.7578, "text": "ran the full pipeline without any caps and regenerated all results. updated the interpretations based on the new results. updated the README and paper to match the final outputs. completed the project (for now) and verified that the code, results, and documentation are all consistent. image: source control image showing the main changes i did in the paper’s latex."}, {"post_id": 10103, "ts": "2026-06-16T18:14:10Z", "hours": 0.6686, "text": "added frozen DNABERT sequence-head evaluation with AUROC, AUPRC, and accuracy reporting. added real null calibration, GC-matched background calibration, and improved the threshold sensitivity analysis. regenerated the downstream task performance and threshold sensitivity results. image: source control image showing the main changes i did in the threshold sensitivity code."}, {"post_id": 9971, "ts": "2026-06-16T14:37:06Z", "hours": 0.3814, "text": "replaced the evidence summary with a clearer evidence table linking each claim to its supporting results and limitations. added a section explaining the main lessons for mechanistic interpretability. expanded the limitations section with clearer discussion of the study’s scope and assumptions. image: source control image showing the main changes i did in the paper."}, {"post_id": 9954, "ts": "2026-06-16T14:10:16Z", "hours": 0.3106, "text": "added a glossary for the main biology terms. explained why the selected motifs are biologically important. simplified the theory section. moved detailed proofs to the appendix. clearly defined how nucleotide motifs are mapped to tokens. added a simple workflow diagram for the full analysis pipeline. image: source control image showing changes that i made in the code."}, {"post_id": 9932, "ts": "2026-06-16T13:32:57Z", "hours": 0.335, "text": "made the entire pipeline fully reproducible, without any caps, including the threshold analysis and result generation. image: screenshot of the pipeline being run."}, {"post_id": 9886, "ts": "2026-06-16T11:20:00Z", "hours": 0.9978, "text": "showed model performance before the interpretability analysis. separated task performance from probe results. combined all interpretability analyses into one pipeline. made CTCF the main case study. made the overall framing clearer. explained every analysis threshold. validated thresholds with sensitivity tests and control experiments. showed that the main results stay consistent across different thresholds."}]...
|
Title: MINTS by @ArjunCodess | Stardance
Devlogs: Title: MINTS by @ArjunCodess | Stardance
Devlogs:
showed model performance before the interpretability analysis. separated task performance from probe results. combined all interpretability analyses into one pipeline. made CTCF the main case study. made the overall framing clearer. explained every analysis threshold. validated thresholds with sensitivity tests and control experiments. showed that the main results stay consistent across different thresholds.
made the entire pipeline fully reproducible, without any caps, including the threshold analysis and result generation. image: screenshot of the pipeline being run.
added a glossary for the main biology terms. explained why the selected motifs are biologically important. simplified the theory section. moved detailed proofs to the appendix. clearly defined how nucleotide motifs are mapped to tokens. added a simple workflow diagram for the full analysis pipeline. image: source control image showing changes that i made in the code.
replaced the evidence summary with a clearer evidence table linking each claim to its supporting results and limitations. added a section explaining the main lessons for mechanistic interpretability. expanded the limitations section with clearer discussion of the study’s scope and assumptions. image: source control image showing the main changes i did in the paper.
added frozen DNABERT sequence-head evaluation with AUROC, AUPRC, and accuracy reporting. added real null calibration, GC-matched background calibration, and improved the threshold sensitivity analysis. regenerated the downstream task performance and threshold sensitivity results. image: source control image showing the main changes i did in the threshold sensitivity code.
ran the full pipeline without any caps and regenerated all results. updated the interpretations based on the new results. updated the README and paper to match the final outputs. completed the project (for now) and verified that the code, results, and documentation are all consistent. image: source control image showing the main changes i did in the paper’s latex.
Ships:
Built a reproducible mechanistic interpretability pipeline for genomic transformers. It extracts model circuits, runs activation patching, and tests biological motif detection. The biggest challenge was building reliable experiments without overclaiming results. I’m proud of the scientific rigor, reproducibility, and honest negative findings. Run python main.py to test everything....
|
1793872461.4024968
|
1793958861.4024968
|
|
18547
|
Untitled by @Ajay_Karthick | Stardance
|
Ajay_Karthick
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @Ajay_Karthick | Stardance
|
1793594948.0640316
|
1794458948.0640316
|
|
18548
|
My first slack bot! by @Alinma | Stardance
|
Alinma
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @Alinma | Stardance
|
1793879563.2259092
|
1794484363.2259092
|
|
18549
|
My first slack bot! by @aoalq22 | Stardance
|
aoalq22
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @aoalq22 | Stardance
|
1793426071.8111324
|
1794030871.8111324
|
|
18550
|
Slack Bot Icekeem by @Ankush | Stardance
|
Ankush
|
2
|
8.0
|
41
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-13T11:30:32Z", "hours": 3.0, "multiplier": 7.78, "payout": 26, "blessing": "neutral", "text": "IceKeem is a slack bot that helps me out with my channel! This is the 2nd ship for my bot, and is on the smaller side. This update, I added the home page for my bot, added @mention replies. There are some fun pre-determined replies for @mentions , but when none match, the input is passed down to an AI to answer. I learnt a lot while making this bot, had a lot of fun. I got to know a lot about slack bots and how slack works. I am really proud of the banner image I made! Apart from that, I am so happy to be able to bring back the chonky button that a user gets to press when they join my channel! Trying out my bot Most of the bot commands like /icekeem-ping , /icekeem-blog and /icekeem-help work from anywhere, but if you want to use @mention you have to join my channel. #ankush-loves-icecream You should defo join my channel :3 I hope you have fun with my bot! Features in a glimpse 3 commands /icekeem-ping , /icekeem-blog and /icekeem-help Personal channel join and leave triggers Button interactions Home page @mention replies", "repo": "https://github.com/aroyx/IceKeem-Slack-bot", "demo": "https://app.slack.com/client/E09V59WQY1E/C09CT01115K"}, {"ship_num": 2, "ts": "2026-06-17T08:42:24Z", "hours": 5.0, "multiplier": 2.98, "payout": 15, "blessing": "neutral", "text": "IceKeem silly little helper for my channel in slack. It is stupidly simple and pretty (super tasty too!). After Hackclub nuked “workflows” in our slack, my beloved bot IceKeem was shot dead in the carnage. After months I got time to work on this and I had a great time reviving my friend! I am very happy with how things are and I believe the /icekeem-blog command output is very cool! Though I definitely have to polish up my blogs and remove the dummy ones. Even though slack docs are great I think I had a hard time navigating through them. Github issues and other forum posts were a life saver. Currently the three commands /icekeem-ping , /icekeem-help and /icekeem-blog work from everywhere in slack, but a there are other functionalities like “Welcome” message when people join. and a huge satisfying button to top it off. (You should definitely join my channel) There are other features that I plan on working later this week, some of them are: App page or whatever they are called @mention replies Make the bot more flexible, so others can easily use this bot for themselves. Any other suggestions I might get", "repo": "https://github.com/aroyx/IceKeem-Slack-bot", "demo": "https://app.slack.com/client/E09V59WQY1E/C09CT01115K"}]...
|
[{"post_id": 27616, "ts": "202 [{"post_id": 27616, "ts": "2026-07-13T11:12:58Z", "hours": 3.3211, "text": "Slack bot home page done! Along with that I also added tags of my blogs to my carousal . Most of the hard part was debugging why my Home page wasn’t showing up properly. It was because I forgot to add error reporting I also spent a long time trying to add images to my hope page. The images didn’t just work! After a lot of time googling, I think it is because the image block can’t render svg files Lastly, I also added @mention replies to my bot. There are a few fun pre-determined replies and when the input matches none, it passes the input to a free tier model of Gemini called Gemini Lite Flash 3.1 Some BTS I had a lot of love and passion for this bot, and such also had high expectations with the payout. But unfortunately I only got 3x multiplier . I was sad, but I was ready to improve on the mistakes I made, I wanted to know what went wrong. After I read the reviews, I was a little bit happier. They all said my bot was really good made! But unfortunately it didn’t work. I spent the next couple of hours trying to find out what I did wrong! … … … I couldn’t. I lastly resorted to asking AI, I gave it full details. And it gave me my answer… the reason my bot shut down was because I was using the --user tag while starting my bot using systemd I was devastated. I will never emotionally recover from this. But the all good reviews kept motivated to keep on working. So i kept working on my other projects with full motivation! And yesterday I took some time off to complete the final few features I planned on adding to the bot. Currently the bot is “completed” as per my book, but I will still add new features, updates when I see a interesting one! Currently this is probably the last devlog of IceKeem in Stardance."}, {"post_id": 10513, "ts": "2026-06-17T08:17:45Z", "hours": 1.2408, "text": "Made a carousal for my blogs! This was surprisingly simple due to slack block builder ! I just used the default carousal they provide and put in my data in-place of the dummy texts :) But there was a problem! If someone invocated the /icekeem-blog command from #channel123 it the msg will be sent to my personal channel! That was bad and I was having a hard time figuring out how to get the channel id where the command was invocated. The function I was using: await client . chat . postEphemeral ({ user : presser , channel : ChannelID , text : \" text \" , blocks : [...], }) I don’t know why but I was under a illusion that respond function can’t do the blocks that my carousal uses… When I tried, it worked! await respond ({ text : `text` , blocks : [...] })"}, {"post_id": 9177, "ts": "2026-06-15T12:16:33Z", "hours": 0.7717, "text": "Just as I had planned I improved the welcome thing. When ppl join my channel the bot sends a welcome msg with a big fat squishy asmr satisfying button. This time I worked on to make the button a one-time-button and only allowing the joinee to press the button… Ah yes! I also spent some time finishing up the banner image. Looks cool imo. But there are overall 3 different views I encountered in stardance.hackclub.com. And it looks bad in 2 of them due to the image being cropped…idk what I should do… the natural thing to do would be to bring everything to the center…but that’d look ugly…idk what to do. I think I’ll finish this project with this devlog. I still have to make the README, but that shouldn’t take much time, i’ll do that in github’s online editor"}, {"post_id": 9154, "ts": "2026-06-15T10:19:49Z", "hours": 1.7514, "text": "It’s been a smooth and calm day for me. So smooth that something feels off…idk but everything I had in mind worked super easily… something definitely is off… Anyway, first thing I did was make the /icekeem-help command. It was easy - just like a print statement. Also added link to the blog in /icekeem-blog command. I also made the event triggers for people joining/leaving my channel. There probably are bugs rn… but we’ll fix them when we encounter them. The slack docs is amazing! I google stuff and almost always the first thing in the slack docs has my answer, I don’t want to admit but the google ai in the search also is useful… The last thing I did before sleeping was make the sleep function work… I couldn’t, lastly had to resort to ai making the code for me. I didn’t try to partition my code in different files like I’d like to. I will, if the codebase becomes more than 500+ lines. Today morning I tried the blog command and found that the link is not working. Easy fix, I path was defined in the top layer insead of inside meta . I also added buttons for the people who join my channel. It is great you should check it out!! Making this frustrated me a little, but it worked by the end. I had to ask AI for help with making the button green like my previous workflow bot had. Fortunately a single option did the trick. After done with coding, I made the “banner”(?) for this project. It is still a wip, but it is something. I think I’ll change the bg for the screenshots of the bot working. But that is a task for future me. My next steps will be to make the button one time use and the “ping me” message be sent in thread."}, {"post_id": 8754, "ts": "2026-06-14T15:46:09Z", "hours": 1.23, "text": "The bot setup and a basic Ping/fetch function to my own blogs! There is not much to say about my progress since things aren’t going very complex rn. I made a ping command that takes a int for timeout/sleeping (which doesn’t work rn…sob) While following the tutorial I saw them using the Cat Facts API, and I remembered that I also made an API for my blogs! So I used that to fetch the latest BLOG that I have updated. Currently the site of blogs and the blogs aren’t really finished either…so we’ll just have to work with what crap had the last time I worked on it The one thing that took some time was figuring out how the arguments work. Another thing that took some time is FIGURING OUT HOW TO USE A FUNCTION DEFINED IN ANOTHER FILE 😭 I couldn’t figure that out…probably will ask my friends for help. I plan on adding triggers for when ppl join my channel…also is buttons available now? Those chonky buttons were great, I hope they are available to use in a bot"}]...
|
Title: Slack Bot Icekeem by @Ankush | Stardance
D Title: Slack Bot Icekeem by @Ankush | Stardance
Devlogs:
The bot setup and a basic Ping/fetch function to my own blogs! There is not much to say about my progress since things aren’t going very complex rn. I made a ping command that takes a int for timeout/sleeping (which doesn’t work rn…sob) While following the tutorial I saw them using the Cat Facts API, and I remembered that I also made an API for my blogs! So I used that to fetch the latest BLOG that I have updated. Currently the site of blogs and the blogs aren’t really finished either…so we’ll just have to work with what crap had the last time I worked on it The one thing that took some time was figuring out how the arguments work. Another thing that took some time is FIGURING OUT HOW TO USE A FUNCTION DEFINED IN ANOTHER FILE 😭 I couldn’t figure that out…probably will ask my friends for help. I plan on adding triggers for when ppl join my channel…also is buttons available now? Those chonky buttons were great, I hope they are available to use in a bot
It’s been a smooth and calm day for me. So smooth that something feels off…idk but everything I had in mind worked super easily… something definitely is off… Anyway, first thing I did was make the /icekeem-help command. It was easy - just like a print statement. Also added link to the blog in /icekeem-blog command. I also made the event triggers for people joining/leaving my channel. There probably are bugs rn… but we’ll fix them when we encounter them. The slack docs is amazing! I google stuff and almost always the first thing in the slack docs has my answer, I don’t want to admit but the google ai in the search also is useful… The last thing I did before sleeping was make the sleep function work… I couldn’t, lastly had to resort to ai making the code for me. I didn’t try to partition my code in different files like I’d like to. I will, if the codebase becomes more than 500+ lines. Today morning I tried the blog command and found that the link is not working. Easy fix, I path was defined in the top layer insead of inside meta . I also added buttons for the people who join my channel. It is great you should check it out!! Making this frustrated me a little, but it worked by the end. I had to ask AI for help with making the button green like my previous workflow bot had. Fortunately a single option did the trick. After done with coding, I made the “banner”(?) for this project. It is still a wip, but it is something. I think I’ll change the bg for the screenshots of the bot working. But that is a task for future me. My next steps will be to make the button one time use and the “ping me” message be sent in thread.
Just as I had planned I improved the welcome thing. When ppl join my channel the bot sends a welcome msg with a big fat squishy asmr satisfying button. This time I worked on to make the button a one-time-button and only allowing the joinee to press the button… Ah yes! I also spent some time finishing up the banner image. Looks cool imo. But there are overall 3 different views I encountered in stardance.hackclub.com. And it looks bad in 2 of them due to the image being cropped…idk what I should do… the natural thing to do would be to bring everything to the center…but that’d look ugly…idk what to do. I think I’ll finish this project with this devlog. I still have to make the README, but that shouldn’t take much time, i’ll do that in github’s online editor
Made a carousal for my blogs! This was surprisingly simple due to slack block builder ! I just used the default carousal they provide and put in my data in-place of the dummy texts :) But there was a problem! If someone invocated the /icekeem-blog command from #channel123 it the msg will be sent to my personal channel! That was bad and I was having a hard time figuring out how to get the channel id where the command was invocated. The function I was using: await client . chat . postEphemeral ({ user : presser , channel : ChannelID , text : " text " , blocks : [...], }) I don’t know why but I was under a illusion that respond function can’t do the blocks that my carousal uses… When I tried, it worked! await respond ({ text : `text` , blocks : [...] })
Slack bot home page done! Along with that I also added tags of my blogs to my carousal . Most of the hard part was debugging why my Home page wasn’t showing up properly. It was because I forgot to add error reporting I also spent a long time trying to add images to my hope page. The images didn’t just work! After a lot of time googling, I think it is because the image block can’t render svg files Lastly, I also added @mention replies to my bot. There are a few fun pre-determined replies and when the input matches none, it passes the input to a free tier model of Gemini called Gemini Lite Flash 3.1 Some BTS I had a lot of love and passion for this bot, and such also had high expectations with the payout. But unfortunately I only got 3x multiplier . I was sad, but I was ready to improve on the mistakes I made, I wanted to know what went wrong. After I read the reviews, I was a little bit happier. They all said my bot was really good made! But unfortunately it didn’t work. I spent the next couple of hours trying to find out what I did wrong! … … … I couldn’t. I lastly resorted to asking AI, I gave it full details. And it gave me my answer… the reason my bot shut down was because I was using the --user tag while starting my bot using systemd I was devastated. I will never emotionally recover from this. But the all good reviews kept motivated to keep on working. So i kept working on my other projects with full motivation! And yesterday I took some time off to complete the final few features I planned on adding to the bot. Currently the bot is “completed” as per my book, but I will still add new features, updates when I see a interesting one! Currently this is probably the last devlog of IceKeem in Stardance.
Ships:
IceKeem silly little helper for my channel in slack. It is stupidly simple and pretty (super tasty too!). After Hackclub nuked “workflows” in our slack, my beloved bot IceKeem was shot dead in the carnage. After months I got time to work on this and I had a great time reviving my friend! I am very happy with how things are and I believe the /icekeem-blog command output is very cool! Though I definitely have to polish up my blogs and remove the dummy ones. Even though slack docs are great I think I had a hard time navigating through them. Github issues and other forum posts were a life saver. Currently the three commands /icekeem-ping , /icekeem-help and /icekeem-blog work from everywhere in slack, but a there are other functionalities like “Welcome” message when people join. and a huge satisfying button to top it off. (You should definitely join my channel) There are other features that I plan on working later this week, some of them are: App page or whatever they are called @mention replies Make the bot more flexible, so others can easily use this bot for themselves. Any other suggestions I might get
IceKeem is a slack bot that helps me out with my channel! This is the 2nd ship for my bot, and is on the smaller side. This update, I added the home page for my bot, added @mention replies. There are some fun pre-determined replies for @mentions , but when none match, the input is passed down to an AI to answer. I learnt a lot while making this bot, had a lot of fun. I got to know a lot about slack bots and how slack works. I am really proud of the banner image I made! Apart from that, I am so happy to be able to bring back the chonky button that a user gets to press when they join my channel! Trying out my bot Most of the bot commands like /icekeem-ping , /icekeem-blog and /icekeem-help work from anywhere, but if you want to use @mention you have to join my channel. #ankush-loves-icecream You should defo join my channel :3 I hope you have fun with my bot! Features in a glimpse 3 commands /icekeem-ping , /icekeem-blog and /icekeem-help Personal channel join and leave triggers Button interactions Home page @mention replies...
|
1794012488.740096
|
1794098888.740096
|