|
53271
|
personalTerminal by @Lunn | Stardance
|
Lunn
|
1
|
7.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-30T02:52:01Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "helloooooo world! I built a personal site that processes inputs just like a real Linux CLI. The terminal includes several fun commands you can try, such as ‘whoami’ to learn about me, and ‘neofetch’ which displays Arch Linux setup. The feature i’m most proud is the ‘music’ command. if you type ‘music play 1’, you can listen to my favorite track previews. Just type ‘help’ in the terminal to get started!", "repo": "https://github.com/ZeroLogicDev/ahlun-localhost", "demo": "https://zerologicdev.github.io/ahlun-localhost/"}]...
|
[{"post_id": 57751, "ts": "202 [{"post_id": 57751, "ts": "2026-08-30T00:56:52Z", "hours": 1.6242, "text": "Devlog #3 Updated the music section to make it functional! Users can now list my top 10 favorite tracks and play previews directly inside the terminal using “music play [number]”."}, {"post_id": 57246, "ts": "2026-08-29T10:58:28Z", "hours": 0.7347, "text": "Devlog #2 Added my top ten favorite tracks to the music section and hid some easter eggs. My next mission is figuring out how to make the audio work so we can actually play these tracks straight from the terminal!"}, {"post_id": 56870, "ts": "2026-08-28T20:59:48Z", "hours": 4.5769, "text": "Devlog #1 Just cooked up the MVP for my personal site… Welcome to my first devlog, getting ready to ship!"}]...
|
Title: personalTerminal by @Lunn | Stardance
Devl Title: personalTerminal by @Lunn | Stardance
Devlogs:
Devlog #1 Just cooked up the MVP for my personal site… Welcome to my first devlog, getting ready to ship!
Devlog #2 Added my top ten favorite tracks to the music section and hid some easter eggs. My next mission is figuring out how to make the audio work so we can actually play these tracks straight from the terminal!
Devlog #3 Updated the music section to make it functional! Users can now list my top 10 favorite tracks and play previews directly inside the terminal using “music play [number]”.
Ships:
helloooooo world! I built a personal site that processes inputs just like a real Linux CLI. The terminal includes several fun commands you can try, such as ‘whoami’ to learn about me, and ‘neofetch’ which displays Arch Linux setup. The feature i’m most proud is the ‘music’ command. if you type ‘music play 1’, you can listen to my favorite track previews. Just type ‘help’ in the terminal to get started!...
|
1793713905.9604003
|
1793800305.9604003
|
|
26974
|
My very own WebOS by @Jimmy_Tropedo | Stardance
|
Jimmy_Tropedo
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-14T21:48:31Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made RockOS, a calm and tactile web operating system themed around mindfulness and rock balancing. What was challenging: Writing the custom 2D physics engine loop from scratch in Vanilla Javascript so the pebbles bounce off boundaries, transfer momentum realistically on collisions, and lock into stable stacked columns. What I’m proud of: The Web Audio API ocean waves synthesizer which generates soothing background sea noises mathematically without loading any heavy audio files, and the live search engine browser. How to test: Open the settings panel to turn on the wave sounds or scale the rocks, click and drag/throw the pebbles to balance them at the bottom, and use the Google Search bar to query live Wikipedia pages!", "repo": "https://github.com/JimmyTorpedo/webos", "demo": "https://jimmytorpedo.github.io/webos/"}]...
|
[{"post_id": 28555, "ts": "202 [{"post_id": 28555, "ts": "2026-07-14T21:34:43Z", "hours": 0.3644, "text": "shipped rockos rockos is officially completed and shipped! i’ve finalized all the core features: built a custom 2D physics engine for pebble dragging, throwing velocity inertia, and elastic boundary collisions; wrote a low-frequency pink noise ocean waves sound synthesizer using the native Web Audio API for background nature sounds; connected a live Wikipedia query search API inside the simulated browser panel; styled all rocks with organic terracotta, sandstone, and slate gray colors matching the forest background; and added scaling multipliers and wallpaper changers in the Settings window. this project turned out so clean and calming to use. it’s fully ready to deploy!"}, {"post_id": 17308, "ts": "2026-06-28T01:08:54Z", "hours": 1.3075, "text": "Starting rockos i’ve had an idea for a new OS and now i’m going to start building it and announcing it as the name for the RockOS. it’s gonna be a super calm, minimalist workspace focusing on rock balancing and clean layouts. i’m excited to start coding this and will log my progress here."}, {"post_id": 17151, "ts": "2026-06-27T20:50:52Z", "hours": 0.8581, "text": "v0.1: starting my webOS project, just a basic web page, more coming soon!!!"}]...
|
Title: My very own WebOS by @Jimmy_Tropedo | Stard Title: My very own WebOS by @Jimmy_Tropedo | Stardance
Devlogs:
v0.1: starting my webOS project, just a basic web page, more coming soon!!!
Starting rockos i’ve had an idea for a new OS and now i’m going to start building it and announcing it as the name for the RockOS. it’s gonna be a super calm, minimalist workspace focusing on rock balancing and clean layouts. i’m excited to start coding this and will log my progress here.
shipped rockos rockos is officially completed and shipped! i’ve finalized all the core features: built a custom 2D physics engine for pebble dragging, throwing velocity inertia, and elastic boundary collisions; wrote a low-frequency pink noise ocean waves sound synthesizer using the native Web Audio API for background nature sounds; connected a live Wikipedia query search API inside the simulated browser panel; styled all rocks with organic terracotta, sandstone, and slate gray colors matching the forest background; and added scaling multipliers and wallpaper changers in the Settings window. this project turned out so clean and calming to use. it’s fully ready to deploy!
Ships:
I made RockOS, a calm and tactile web operating system themed around mindfulness and rock balancing. What was challenging: Writing the custom 2D physics engine loop from scratch in Vanilla Javascript so the pebbles bounce off boundaries, transfer momentum realistically on collisions, and lock into stable stacked columns. What I’m proud of: The Web Audio API ocean waves synthesizer which generates soothing background sea noises mathematically without loading any heavy audio files, and the live search engine browser. How to test: Open the settings panel to turn on the wave sounds or scale the rocks, click and drag/throw the pebbles to balance them at the bottom, and use the Google Search bar to query live Wikipedia pages!...
|
1793713907.0875573
|
1793800307.0875573
|
|
66207
|
My awesome macropad! by @Ethangowda | Stardance
|
Ethangowda
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Ethangowda | Stard Title: My awesome macropad! by @Ethangowda | Stardance...
|
1793713908.2471333
|
1794318708.2471333
|
|
18362
|
NovaOS by @RishitEncrypt | Stardance
|
RishitEncrypt
|
2
|
15.0
|
46
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-17T13:37:41Z", "hours": 3.0, "multiplier": 14.33, "payout": 46, "blessing": "neutral", "text": "NovaOS started as a small experiment. I wanted to see if I could recreate the feeling of using a desktop operating system entirely inside the browser. What I expected to be a quick side project ended up becoming something much bigger over the course of a few days. The goal was never to copy Windows or macOS. I wanted NovaOS to have its own identity while still feeling familiar enough that anyone could jump in and immediately understand how to use it. The result is a browser-based desktop environment complete with its own applications, taskbar, launcher, notifications, settings system, wallpapers, and window management. Since the first version, the project has grown quite a bit. NovaOS now includes Nova AI, Nova Command, Nova Music, Notes, Calculator, Explorer, Stellar Navigation, live wallpapers, onboarding screens, desktop widgets, custom application icons, system monitoring tools, and a number of smaller quality-of-life features. Version 1.0.2 focused heavily on improving the overall experience, redesigning parts of the interface, adding new applications, and making the desktop feel more cohesive. I used Claude throughout development as a tool to help generate parts of the CSS, experiment with interface ideas, and build some larger components. Nova Command was largely built with Claude’s assistance, along with several widgets and UI systems. Everything still required a lot of manual integration, debugging, redesigning, and refinement to fit together inside the project. The hardest part was never building individual features. A calculator, notes app, or music player can be built on their own. The real challenge was getting everything to work together without breaking something else. Wallpapers needed to communicate with settings, windows needed to interact correctly with the taskbar, notifications needed to work across applications, and every new feature introduced another opportunity for bugs. A large portion of development ended up being spent connecting systems together and solving unexpected problems. What I’m most proud of isn’t any individual feature. It’s the fact that the project actually reached a point where it feels complete and usable. Starting a project is exciting. Finishing one is much harder. There were plenty of moments where fixing one issue created two new ones, but seeing everything finally come together into something that genuinely feels like a desktop environment made the effort worthwhile. If you decide to try NovaOS, the best way to experience it is to explore. Open applications, customize the desktop, launch Stellar Navigation, experiment with Nova Command, play music, change wallpapers, and see what you can find. There are still features I want to add and areas I want to improve, but this version finally feels like the vision I had when I started. For now, NovaOS v1.0.2 marks the end of the first chapter of the project.", "repo": "https://github.com/rishitencrypt/Nova-Os", "demo": "https://nova-os-encrypt.netlify.app"}, {"ship_num": 2, "ts": "2026-06-16T09:29:31Z", "hours": 12.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "So this is NovaOS, my browser based desktop environment. I started this about 3 days ago as a small side project, and somehow it turned into something much bigger than I anticipated. My primary goal for this project was to create a desktop environment which was reminiscent of an actual desktop operating system, and still remained completely within the browser. Here are some of the features I ended up including: desktop, taskbar, launcher, windowing system, live wallpapers, notifications, settings, music player, notes app, file explorer, calculator, Nova AI, Nova Command. Although I could have tried to rebuild Windows or macOS, my true intention was to create something original and built entirely by me and help of Claude AI. i used claude to create me some css for the project, nova command app was entirely made using Claude , and the widget . I believe the largest obstacle I faced was getting all the features to interact with each other. Actually implementing a single feature is one aspect; getting all your apps, windows, settings, wallpapers and notifications working together smoothly is where almost all of my time went. There were definitely quite a few bugs, and plenty of issues with deployment, and fixing one bug would cause two more. This was pretty much a project in problem solving. The thing that I am the most proud of is the fact that I actually finished it. It is quite easy to start something because of the excitement of a new idea, however actually taking that idea all the way through to completion is much more difficult. Getting all the different pieces to work together in harmony, and to create something which actually felt like a desktop was a tremendous joy that made all the debugging worthwhile. If you decide to try out NovaOS, the best way to do it is to simply mess around with it. Open the apps, try the Nova Command, use Nova Music, change a wallpaper and check the settings. Although there are still quite a few areas that may seem a bit rough around the edges, given that it was built relatively quickly, I think it pretty much captures what I was looking to achieve. And after three days I think that NovaOS v1.0 is officially done.", "repo": "https://github.com/rishitencrypt/Nova-Os", "demo": "https://nova-os-encrypt.netlify.app"}]...
|
[{"post_id": 10610, "ts": "202 [{"post_id": 10610, "ts": "2026-06-17T13:33:43Z", "hours": 3.2414, "text": "NovaOS v1.0.2 With this release, the goal was to make NovaOS feel like an actual desktop environment instead of just browser windows piled up. This includes a redesign of the layout of the Explorer. The addition of the Stellar Navigation simulator gives users the ability to navigate a space ship using a simple, yet engaging simulation game. Icons for use on the desktop were redesigned and unified using a consistent design approach, instead of relying on placeholder art for each application. There have been several updates under the hood to further refine various aspects of NovaOS including window behavior, desktop arrangement, and application layout."}, {"post_id": 9839, "ts": "2026-06-16T09:16:44Z", "hours": 1.1064, "text": "That’s all for now. NovaOS v1.0 is done after 3 days of developing, breaking, fixing stuff, redesigning some half of the interface, and wasting a lot of time trying to find those weird bugs. It grew from being an experiment to a full-fledged desktop environment working inside the browser, equipped with its own applications, launcher, wallpaper options, notifications, music player, artificial intelligence, settings, and many other features. I especially liked implementing Nova Command, Nova Music, and making the whole desktop feel like an actual operating system. Working on this project definitely brought many insights and overall I’m quite satisfied with the result achieved in such little time. For everyone interested to see the result yourself: 🔗 Live Demo: https://nova-os-encrypt.netlify.app/ 🔗 GitHub: https://github.com/rishitencrypt/Nova-Os Thanks for following me during this journey. Next project incoming."}, {"post_id": 9748, "ts": "2026-06-16T05:23:38Z", "hours": 0.5169, "text": "Hi!! NovaOS is becoming very close to that point where I can say that it’s “usable” and not just “project”. The development of most of the key features is completed now, which means that I can finally start working on improving existing code rather than implementing new stuff. Right now, I’m working on cleaning up the user interface, making the windows behave better, redesigning Settings app, working on the taskbar and Nova Hub. Also, now novaOS supports multiple live wallpapers and I have started adding some improvements to the stock apps to make them more functional. Now, it’s almost all about bug fixing, UI adjustments and quality of life improvements."}, {"post_id": 9426, "ts": "2026-06-15T19:46:15Z", "hours": 0.7653, "text": "hi! Been working on NovaOS, a desktop environment I’m building in React. It’s not a real operating system, but more of a futuristic desktop experience with its own apps, live wallpapers, glassmorphism UI, and custom window system. So far I’ve built a taskbar, start menu (Nova Hub), Notes, Explorer, Calculator, Nova AI, Nova Command, Settings, boot animations, and support for live video wallpapers. Lately I’ve been focusing on making everything feel more polished and less like a prototype. Still plenty to improve, but it’s finally starting to feel like an actual desktop instead of a bunch of components thrown together."}, {"post_id": 9375, "ts": "2026-06-15T18:29:22Z", "hours": 3.5267, "text": "now that looks like an os that you would expect in a spaceship"}, {"post_id": 9135, "ts": "2026-06-15T09:07:41Z", "hours": 0.6517, "text": "looking wayyy better than befour still lot of stuff to do"}, {"post_id": 9095, "ts": "2026-06-15T06:10:19Z", "hours": 3.9794, "text": "a big jump"}, {"post_id": 8562, "ts": "2026-06-14T07:11:57Z", "hours": 0.3853, "text": "basic structure almost done"}, {"post_id": 8538, "ts": "2026-06-14T06:17:01Z", "hours": 1.3136, "text": "making the basic structure of OS"}]...
|
Title: NovaOS by @RishitEncrypt | Stardance
Devlo Title: NovaOS by @RishitEncrypt | Stardance
Devlogs:
making the basic structure of OS
basic structure almost done
a big jump
looking wayyy better than befour still lot of stuff to do
now that looks like an os that you would expect in a spaceship
hi! Been working on NovaOS, a desktop environment I’m building in React. It’s not a real operating system, but more of a futuristic desktop experience with its own apps, live wallpapers, glassmorphism UI, and custom window system. So far I’ve built a taskbar, start menu (Nova Hub), Notes, Explorer, Calculator, Nova AI, Nova Command, Settings, boot animations, and support for live video wallpapers. Lately I’ve been focusing on making everything feel more polished and less like a prototype. Still plenty to improve, but it’s finally starting to feel like an actual desktop instead of a bunch of components thrown together.
Hi!! NovaOS is becoming very close to that point where I can say that it’s “usable” and not just “project”. The development of most of the key features is completed now, which means that I can finally start working on improving existing code rather than implementing new stuff. Right now, I’m working on cleaning up the user interface, making the windows behave better, redesigning Settings app, working on the taskbar and Nova Hub. Also, now novaOS supports multiple live wallpapers and I have started adding some improvements to the stock apps to make them more functional. Now, it’s almost all about bug fixing, UI adjustments and quality of life improvements.
That’s all for now. NovaOS v1.0 is done after 3 days of developing, breaking, fixing stuff, redesigning some half of the interface, and wasting a lot of time trying to find those weird bugs. It grew from being an experiment to a full-fledged desktop environment working inside the browser, equipped with its own applications, launcher, wallpaper options, notifications, music player, artificial intelligence, settings, and many other features. I especially liked implementing Nova Command, Nova Music, and making the whole desktop feel like an actual operating system. Working on this project definitely brought many insights and overall I’m quite satisfied with the result achieved in such little time. For everyone interested to see the result yourself: 🔗 Live Demo: https://nova-os-encrypt.netlify.app/ 🔗 GitHub: https://github.com/rishitencrypt/Nova-Os Thanks for following me during this journey. Next project incoming.
NovaOS v1.0.2 With this release, the goal was to make NovaOS feel like an actual desktop environment instead of just browser windows piled up. This includes a redesign of the layout of the Explorer. The addition of the Stellar Navigation simulator gives users the ability to navigate a space ship using a simple, yet engaging simulation game. Icons for use on the desktop were redesigned and unified using a consistent design approach, instead of relying on placeholder art for each application. There have been several updates under the hood to further refine various aspects of NovaOS including window behavior, desktop arrangement, and application layout.
Ships:
So this is NovaOS, my browser based desktop environment. I started this about 3 days ago as a small side project, and somehow it turned into something much bigger than I anticipated. My primary goal for this project was to create a desktop environment which was reminiscent of an actual desktop operating system, and still remained completely within the browser. Here are some of the features I ended up including: desktop, taskbar, launcher, windowing system, live wallpapers, notifications, settings, music player, notes app, file explorer, calculator, Nova AI, Nova Command. Although I could have tried to rebuild Windows or macOS, my true intention was to create something original and built entirely by me and help of Claude AI. i used claude to create me some css for the project, nova command app was entirely made using Claude , and the widget . I believe the largest obstacle I faced was getting all the features to interact with each other. Actually implementing a single feature is one aspect; getting all your apps, windows, settings, wallpapers and notifications working together smoothly is where almost all of my time went. There were definitely quite a few bugs, and plenty of issues with deployment, and fixing one bug would cause two more. This was pretty much a project in problem solving. The thing that I am the most proud of is the fact that I actually finished it. It is quite easy to start something because of the excitement of a new idea, however actually taking that idea all the way through to completion is much more difficult. Getting all the different pieces to work together in harmony, and to create something which actually felt like a desktop was a tremendous joy that made all the debugging worthwhile. If you decide to try out NovaOS, the best way to do it is to simply mess around with it. Open the apps, try the Nova Command, use Nova Music, change a wallpaper and check the settings. Although there are still quite a few areas that may seem a bit rough around the edges, given that it was built relatively quickly, I think it pretty much captures what I was looking to achieve. And after three days I think that NovaOS v1.0 is officially done.
NovaOS started as a small experiment. I wanted to see if I could recreate the feeling of using a desktop operating system entirely inside the browser. What I expected to be a quick side project ended up becoming something much bigger over the course of a few days. The goal was never to copy Windows or macOS. I wanted NovaOS to have its own identity while still feeling familiar enough that anyone could jump in and immediately understand how to use it. The result is a browser-based desktop environment complete with its own applications, taskbar, launcher, notifications, settings system, wallpapers, and window management. Since the first version, the project has grown quite a bit. NovaOS now includes Nova AI, Nova Command, Nova Music, Notes, Calculator, Explorer, Stellar Navigation, live wallpapers, onboarding screens, desktop widgets, custom application icons, system monitoring tools, and a number of smaller quality-of-life features. Version 1.0.2 focused heavily on improving the overall experience, redesigning parts of the interface, adding new applications, and making the desktop feel more cohesive. I used Claude throughout development as a tool to help generate parts of the CSS, experiment with interface ideas, and build some larger components. Nova Command was largely built with Claude’s assistance, along with several widgets and UI systems. Everything still required a lot of manual integration, debugging, redesigning, and refinement to fit together inside the project. The hardest part was never building individual features. A calculator, notes app, or music player can be built on their own. The real challenge was getting everything to work together without breaking something else. Wallpapers needed to communicate with settings, windows needed to interact correctly with the taskbar, notifications needed to work across applications, and every new feature introduced another opportunity for bugs. A large portion of development ended up being spent connecting systems together and solving unexpected problems. What I’m most proud of isn’t any individual feature. It’s the fact that the project actually reached a point where it feels complete and usable. Starting a project is exciting. Finishing one is much harder. There were plenty of moments where fixing one issue created two new ones, but seeing everything finally come together into something that genuinely feels like a desktop environment made the effort worthwhile. If you decide to try NovaOS, the best way to experience it is to explore. Open applications, customize the desktop, launch Stellar Navigation, experiment with Nova Command, play music, change wallpapers, and see what you can find. There are still features I want to add and areas I want to improve, but this version finally feels like the vision I had when I started. For now, NovaOS v1.0.2 marks the end of the first chapter of the project....
|
1793713909.4646573
|
1793800309.4646573
|
|
66208
|
My own site! by @shamseldan | Stardance
|
shamseldan
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My own site! by @shamseldan | Stardance
|
1793713910.9547253
|
1794318710.9547253
|
|
4309
|
SSSnake by @bartoszkasyna | Stardance
|
bartoszkasyna
|
1
|
11.0
|
4
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-08T12:16:06Z", "hours": 11.0, "multiplier": 5.63, "payout": 4, "blessing": "neutral", "text": "I made classic snake game running on raspberry pi pico 2. There are two play modes - 1st player mode, 2nd AI agent mode. Making such small AI which can play game fluently on pico 2(512 KB RAM) was challenging.", "repo": "https://github.com/B4rtekk1/SSSnake", "demo": ""}]...
|
[{"post_id": 4856, "ts": "2026 [{"post_id": 4856, "ts": "2026-06-08T12:01:01Z", "hours": 2.0847, "text": "I refactored code for better readibilty. Optimized draw digit function. I think that project is ready to ship."}, {"post_id": 4090, "ts": "2026-06-07T08:59:43Z", "hours": 3.4506, "text": "I have implemented DQN Agent with input size 11 hidden state 128 output size 3 which can play snake game in real time on raspberry pi pico 2. I will try make it better, best scores achieved by ai was 52. I also noticed bug where snake body is larger than one square of grid. Now I’ll focus on optimalization and bug fixes."}, {"post_id": 3367, "ts": "2026-06-06T08:03:42Z", "hours": 1.1811, "text": "Little changes in layout for better game experience. Added Assembly utils for optimalization. Fixed bug - Eaten apple sound wasnt stopping when player died what caused beeping until new game. Added new load screen. Added support for \\n in drawString function"}, {"post_id": 2278, "ts": "2026-06-04T17:54:34Z", "hours": 1.2308, "text": "Previously font size was fixed now you can adjust it. Added loose screen and melody generator when you catch apple. Now I will add more sound like death sound or snake length achievment sound. Then I will focus on creating edge ai capable of playing snake with only 512KB ram on PICO 2"}, {"post_id": 810, "ts": "2026-06-02T14:11:55Z", "hours": 1.2797, "text": "I have implemented basic snake gae. Now I will work on optimalization and lose screen.Later I will try make edge AI capable of working fluently on PICO 2 with 520MB RAM. PS: It’s hard to play and record in same time"}, {"post_id": 713, "ts": "2026-06-02T09:24:54Z", "hours": 1.1464, "text": "Added some simple snake map."}, {"post_id": 661, "ts": "2026-06-02T06:12:54Z", "hours": 0.2764, "text": "He have some power"}]...
|
Title: SSSnake by @bartoszkasyna | Stardance
Devl Title: SSSnake by @bartoszkasyna | Stardance
Devlogs:
He have some power
Added some simple snake map.
I have implemented basic snake gae. Now I will work on optimalization and lose screen.Later I will try make edge AI capable of working fluently on PICO 2 with 520MB RAM. PS: It’s hard to play and record in same time
Previously font size was fixed now you can adjust it. Added loose screen and melody generator when you catch apple. Now I will add more sound like death sound or snake length achievment sound. Then I will focus on creating edge ai capable of playing snake with only 512KB ram on PICO 2
Little changes in layout for better game experience. Added Assembly utils for optimalization. Fixed bug - Eaten apple sound wasnt stopping when player died what caused beeping until new game. Added new load screen. Added support for \n in drawString function
I have implemented DQN Agent with input size 11 hidden state 128 output size 3 which can play snake game in real time on raspberry pi pico 2. I will try make it better, best scores achieved by ai was 52. I also noticed bug where snake body is larger than one square of grid. Now I’ll focus on optimalization and bug fixes.
I refactored code for better readibilty. Optimized draw digit function. I think that project is ready to ship.
Ships:
I made classic snake game running on raspberry pi pico 2. There are two play modes - 1st player mode, 2nd AI agent mode. Making such small AI which can play game fluently on pico 2(512 KB RAM) was challenging....
|
1793713911.832047
|
1793800311.832047
|
|
15446
|
zap by @bernardq | Stardance
|
bernardq
|
3
|
47.0
|
444
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-31T00:18:25Z", "hours": 7.0, "multiplier": 14.32, "payout": 106, "blessing": "neutral", "text": "ZAP or in the new name zip asset packager is a package manager build in python with no packages to manager. ZAP is easy to use am the linux version is not stable yet but it runs.", "repo": "https://github.com/Bkner3/zap", "demo": "https://github.com/Bkner3/zap/releases"}, {"ship_num": 2, "ts": "2026-09-16T19:23:17Z", "hours": 24.0, "multiplier": 7.58, "payout": 182, "blessing": "neutral", "text": "So, I built a package manager in Python. The biggest challenge I experienced was organizing my code, debugging, and building complex features. I’m proud that it works, and I’m proud of all the time I spent coding it. My project documentation is on GitHub, which is the best place I have to write and maintain it. Zap can install, remove, and download packages without installing them, as well as update packages and perform other features. Try out my project, and if you want to add your projects to the Zap repository, contact me on Slack or GitHub. Thanks for Reading!", "repo": "https://github.com/Bkner3/zap", "demo": "https://github.com/Bkner3/zap/releases"}, {"ship_num": 3, "ts": "2026-07-11T21:53:33Z", "hours": 16.0, "multiplier": 9.85, "payout": 156, "blessing": "neutral", "text": "Hello everyone! My project is a package manager built entirely in Python. I challenged myself to create something simple for everyone—both for the people creating the repository and for those who will use it. I am really proud of myself for dedicating so much effort to this project. ⚠️ Project Status & Requirements Please note that this project is currently in Beta and some commands might not be fully functional or ready yet. System Requirements: Python 3.0 or higher is required. To run the project in script mode, you must install the following dependencies: requests, colorama, and tqdm. Current Limitations: The tools inside repo-tools (used for creating repositories) are currently disabled while they undergo updates. In the meantime, if you want to create a repository, you can use the example index provided in the GitHub README and simply replace the package and file names with your own. If you have any questions or run into issues, please feel free to open an issue or ask here on GitHub. I am more than happy to help!", "repo": "https://github.com/Bkner3/zap", "demo": "https://github.com/Bkner3/zap/releases"}]...
|
[{"post_id": 85229, "ts": "202 [{"post_id": 85229, "ts": "2026-10-31T00:12:52Z", "hours": 0.6897, "text": "Devlog #33 The last devlog in stardance I know. Changing some little things with the help of codex because I am very exaust."}, {"post_id": 77160, "ts": "2026-10-05T20:41:48Z", "hours": 1.8519, "text": "Devlog #32 I’m tired of working on this, I try one thing and it doesn’t work I try another even worse but I’m working to launch the zap for linux I just don’t have test packages or packages to release if any wants to launch their package on the zap let me know."}, {"post_id": 76875, "ts": "2026-10-04T21:59:26Z", "hours": 1.7056, "text": "Devlog #31 After some time, I finally had time to work on ZAP again. Today I started fixing some bugs in ZAP, tested the installation script, and added the installation instructions to the README on the main page. ZAP is still in beta, and I know some things don’t work yet, but I want to sleep. I tested the installer on Debian-based systems, but I haven’t tested it on Arch, Alpine, or other obscure distros yet. My linux test PC specs are shown above, and the error is also shown above."}, {"post_id": 74178, "ts": "2026-09-26T21:04:57Z", "hours": 1.0075, "text": "#Devlog #30 Updating the zap web page for the new version."}, {"post_id": 73050, "ts": "2026-09-24T08:47:09Z", "hours": 0.6928, "text": "Devlog #29 Today I finally finished the Linux installation script!"}, {"post_id": 72864, "ts": "2026-09-23T21:50:36Z", "hours": 0.6369, "text": "Devlog #28 So today, I started writing the installation script for Linux. Sorry if I don’t give many updates school just started today!"}, {"post_id": 70055, "ts": "2026-09-18T11:18:17Z", "hours": 0.3489, "text": "Devlog #27 Today, I run zap on Linux and lost my sanity with the complexity of using Linux on an old PC and all the configuration. The hello test package will be available this afternoon. Thanks for reading!"}, {"post_id": 69672, "ts": "2026-09-17T15:29:16Z", "hours": 0.4408, "text": "Devlog #26 Today, I changed the code so that ZAP can have a Linux version. I spent an hour trying to install pip on my Linux PC, but I couldn’t get it to work. I switched to another PC, and now I’m going to test it."}, {"post_id": 69197, "ts": "2026-09-16T15:56:48Z", "hours": 3.8558, "text": "Devlog #25 Making small changes to the code in the past days to launch the version 0.7.0-beta."}, {"post_id": 66646, "ts": "2026-09-12T14:35:05Z", "hours": 0.7144, "text": "Devlog #24 Today, I made some small changes to the project. The next thing I’m going to add is a system to check whether the local index is outdated and update it if necessary."}, {"post_id": 66005, "ts": "2026-09-11T15:00:04Z", "hours": 0.9475, "text": "Devlog #23 Today, I correct a error in the launcher system code and I tried to create a 3 packages to show who it works but they don’t work."}, {"post_id": 65639, "ts": "2026-09-10T22:10:37Z", "hours": 3.4558, "text": "Devlog #22 Today, yesterday I added a function that checks if all packages / dependencies are in the list to be downloaded, also adding the author variable to the database, and some minor changes. Thanks for reading! 😊"}, {"post_id": 64327, "ts": "2026-09-08T16:48:39Z", "hours": 1.4808, "text": "Devlog #21 Updating the README so I can release version 0.7 tomorrow!"}, {"post_id": 63686, "ts": "2026-09-07T16:52:05Z", "hours": 1.5267, "text": "Devlog #20 Today, with the help of ChatGPT, I created the dependency system. The ZAP can now resolve package dependencies and find the correct versions required by each package. It can also handle multiple versions of the same dependency and create launchers with the required dependencies added to the PATH. This means different packages can use different versions of the same dependency without conflicts."}, {"post_id": 61833, "ts": "2026-09-04T22:52:52Z", "hours": 0.6039, "text": "Devlog #19 Today, with the help of ChatGPT, I created a system to check if a dependency’s version is compatible with the program. For example, if a dependency is specified as dependency@>=1.0.0 , the system will analyze the required version and check whether the available version is compatible."}, {"post_id": 58496, "ts": "2026-08-30T22:28:18Z", "hours": 1.8736, "text": "Devlog #18 Today, I added a new parameter to the database for dependencies, and I started working on the dependency system. I don’t know if I mentioned it in the previous devlog, but I also created the confirmation button. Thanks for reading! And if you want to launch your project on Zap, please contact me. Thanks for reading!"}, {"post_id": 54778, "ts": "2026-08-25T21:48:08Z", "hours": 1.4942, "text": "Devlog #17 Hello! Today I finally started working on the scary part of a package manager: dependencies ⛈️⛈️. Warning Today I only worked on the system that grabs the dependencies. The way dependencies will work is through the .cmd launchers stored in: C:/Users/Your_User/AppData/Local/Zap/sl Each package will have its own launcher, and that launcher will be responsible for setting up the environment required by that package. For example, imagine your program uses lib_a version 1.0 , while another program uses lib_a version 2.0 . Instead of putting everything in the same place and causing conflicts, each .cmd launcher will temporarily add the required dependencies to the PATH . This means that both versions can coexist without interfering with each other. Dependencies can also have their own dependencies. When one package depends on another package, its launcher can create its own environment with the dependencies it requires. This creates a kind of lightweight sandbox for each package. The goal is to keep dependencies isolated while keeping the system simple and transparent. This is definitely one of the more complicated parts of the package manager, but I’m finally starting to figure out the architecture. Warning This changes are not avaiable yet!"}, {"post_id": 51693, "ts": "2026-08-21T14:52:13Z", "hours": 2.9186, "text": "Devlog #16 Today, I changed the way you configure Zap. The example below shows how to hide the logo. Before: zap config hl Now: zap config set show_logo true Previously, you couldn’t view the configuration from the program. Now, zap config list shows the current configuration. Warning The configuration is currently only used to enable, disable, or change the logo and debug settings. I’m also finally using Python’s virtual environment to work on the project. These changes will be included in the next release. For now, they are available in the dev branch. And thank you to everyone who has checked out the project and given feedback. If anyone wants to publish their projects and make them available in the Zap repository, please leave a comment or try to contact me."}, {"post_id": 40270, "ts": "2026-08-03T18:11:13Z", "hours": 2.7706, "text": "Devlog #15 Today, I re-write the Readme, launch a release (v0.6.5-beta), I created a official repository and add a test package named hello."}, {"post_id": 32531, "ts": "2026-07-21T19:25:58Z", "hours": 0.7503, "text": "Devlog #14 Today I separated repo-tools from the Zap parser and started developing it in its own branch."}, {"post_id": 30730, "ts": "2026-07-18T15:33:21Z", "hours": 0.9061, "text": "Devlog #13 Adding the info commmad."}, {"post_id": 28369, "ts": "2026-07-14T16:15:58Z", "hours": 0.7253, "text": "adding a gitignore and deleting the repo-tools to start from zero."}, {"post_id": 26852, "ts": "2026-07-11T21:29:51Z", "hours": 1.3656, "text": "Devlog #11 - Now I added upgrades to the zap website but I down publish yet. Sorry for my robotic English."}, {"post_id": 26585, "ts": "2026-07-11T14:33:30Z", "hours": 2.1264, "text": "Devlog #10 Today I added the repo-remove command, which removes a repository URL from the index file. I also made some small improvements to the project’s directory structure."}, {"post_id": 24630, "ts": "2026-07-08T10:54:59Z", "hours": 1.2447, "text": "Devlog - 09 Today I added a base_url parameter to the index configuration, allowing the domain to be changed more easily without having to manually update all links. I also fixed issues in the Makefile that were causing broken executables with no output. Finally, I merged my work from the GitHub dev branch into the GitHub main branch."}, {"post_id": 22463, "ts": "2026-07-04T22:40:05Z", "hours": 1.1542, "text": "Devlog - 08 Starting to create an installation script and configure my VS Code for another computer."}, {"post_id": 17617, "ts": "2026-06-28T14:21:40Z", "hours": 1.2869, "text": "Devlog - 07 Today, I added an upgrade feature to update ZAP to the latest version. The code is untested because I have to return my school laptop and move everything over to my dad’s computer. I don’t know when I will be back to active development."}, {"post_id": 17010, "ts": "2026-06-27T16:37:05Z", "hours": 1.5008, "text": "Devlog - 06. Today I added a function to check if a package is compatible with the operating system where the program is running."}, {"post_id": 11987, "ts": "2026-06-19T15:47:52Z", "hours": 1.6478, "text": "Devlog - 05 Beginning of the creation of the repo-tools that will be used to create and edit an index."}, {"post_id": 11537, "ts": "2026-06-18T20:43:38Z", "hours": 0.5406, "text": "Devlog - 04 Today I added a SHA-256 integrity verification system. The package manager now generates and compares file hashes to validate downloaded files and prevent corrupted or modified packages from being installed."}, {"post_id": 9316, "ts": "2026-06-15T17:01:19Z", "hours": 1.1847, "text": "Devlog - 03 Today I created and finished the update command."}, {"post_id": 6876, "ts": "2026-06-11T15:04:47Z", "hours": 2.6628, "text": "Devlog - 02 Today I finished the logging system and started updating the README. What’s new: Complete activity logging README improvements and setup guide Next step: polishing the project documentation and create a better structure for the packages."}, {"post_id": 6340, "ts": "2026-06-10T17:51:33Z", "hours": 1.0964, "text": "Now I am implementing the log system."}]...
|
Title: zap by @bernardq | Stardance
Devlogs:
Now Title: zap by @bernardq | Stardance
Devlogs:
Now I am implementing the log system.
Devlog - 02 Today I finished the logging system and started updating the README. What’s new: Complete activity logging README improvements and setup guide Next step: polishing the project documentation and create a better structure for the packages.
Devlog - 03 Today I created and finished the update command.
Devlog - 04 Today I added a SHA-256 integrity verification system. The package manager now generates and compares file hashes to validate downloaded files and prevent corrupted or modified packages from being installed.
Devlog - 05 Beginning of the creation of the repo-tools that will be used to create and edit an index.
Devlog - 06. Today I added a function to check if a package is compatible with the operating system where the program is running.
Devlog - 07 Today, I added an upgrade feature to update ZAP to the latest version. The code is untested because I have to return my school laptop and move everything over to my dad’s computer. I don’t know when I will be back to active development.
Devlog - 08 Starting to create an installation script and configure my VS Code for another computer.
Devlog - 09 Today I added a base_url parameter to the index configuration, allowing the domain to be changed more easily without having to manually update all links. I also fixed issues in the Makefile that were causing broken executables with no output. Finally, I merged my work from the GitHub dev branch into the GitHub main branch.
Devlog #10 Today I added the repo-remove command, which removes a repository URL from the index file. I also made some small improvements to the project’s directory structure.
Devlog #11 - Now I added upgrades to the zap website but I down publish yet. Sorry for my robotic English.
adding a gitignore and deleting the repo-tools to start from zero.
Devlog #13 Adding the info commmad.
Devlog #14 Today I separated repo-tools from the Zap parser and started developing it in its own branch.
Devlog #15 Today, I re-write the Readme, launch a release (v0.6.5-beta), I created a official repository and add a test package named hello.
Devlog #16 Today, I changed the way you configure Zap. The example below shows how to hide the logo. Before: zap config hl Now: zap config set show_logo true Previously, you couldn’t view the configuration from the program. Now, zap config list shows the current configuration. Warning The configuration is currently only used to enable, disable, or change the logo and debug settings. I’m also finally using Python’s virtual environment to work on the project. These changes will be included in the next release. For now, they are available in the dev branch. And thank you to everyone who has checked out the project and given feedback. If anyone wants to publish their projects and make them available in the Zap repository, please leave a comment or try to contact me.
Devlog #17 Hello! Today I finally started working on the scary part of a package manager: dependencies ⛈️⛈️. Warning Today I only worked on the system that grabs the dependencies. The way dependencies will work is through the .cmd launchers stored in: C:/Users/Your_User/AppData/Local/Zap/sl Each package will have its own launcher, and that launcher will be responsible for setting up the environment required by that package. For example, imagine your program uses lib_a version 1.0 , while another program uses lib_a version 2.0 . Instead of putting everything in the same place and causing conflicts, each .cmd launcher will temporarily add the required dependencies to the PATH . This means that both versions can coexist without interfering with each other. Dependencies can also have their own dependencies. When one package depends on another package, its launcher can create its own environment with the dependencies it requires. This creates a kind of lightweight sandbox for each package. The goal is to keep dependencies isolated while keeping the system simple and transparent. This is definitely one of the more complicated parts of the package manager, but I’m finally starting to figure out the architecture. Warning This changes are not avaiable yet!
Devlog #18 Today, I added a new parameter to the database for dependencies, and I started working on the dependency system. I don’t know if I mentioned it in the previous devlog, but I also created the confirmation button. Thanks for reading! And if you want to launch your project on Zap, please contact me. Thanks for reading!
Devlog #19 Today, with the help of ChatGPT, I created a system to check if a dependency’s version is compatible with the program. For example, if a dependency is specified as dependency@>=1.0.0 , the system will analyze the required version and check whether the available version is compatible.
Devlog #20 Today, with the help of ChatGPT, I created the dependency system. The ZAP can now resolve package dependencies and find the correct versions required by each package. It can also handle multiple versions of the same dependency and create launchers with the required dependencies added to the PATH. This means different packages can use different versions of the same dependency without conflicts.
Devlog #21 Updating the README so I can release version 0.7 tomorrow!
Devlog #22 Today, yesterday I added a function that checks if all packages / dependencies are in the list to be downloaded, also adding the author variable to the database, and some minor changes. Thanks for reading! 😊
Devlog #23 Today, I correct a error in the launcher system code and I tried to create a 3 packages to show who it works but they don’t work.
Devlog #24 Today, I made some small changes to the project. The next thing I’m going to add is a system to check whether the local index is outdated and update it if necessary.
Devlog #25 Making small changes to the code in the past days to launch the version 0.7.0-beta.
Devlog #26 Today, I changed the code so that ZAP can have a Linux version. I spent an hour trying to install pip on my Linux PC, but I couldn’t get it to work. I switched to another PC, and now I’m going to test it.
Devlog #27 Today, I run zap on Linux and lost my sanity with the complexity of using Linux on an old PC and all the configuration. The hello test package will be available this afternoon. Thanks for reading!
Devlog #28 So today, I started writing the installation script for Linux. Sorry if I don’t give many updates school just started today!
Devlog #29 Today I finally finished the Linux installation script!
#Devlog #30 Updating the zap web page for the new version.
Devlog #31 After some time, I finally had time to work on ZAP again. Today I started fixing some bugs in ZAP, tested the installation script, and added the installation instructions to the README on the main page. ZAP is still in beta, and I know some things don’t work yet, but I want to sleep. I tested the installer on Debian-based systems, but I haven’t tested it on Arch, Alpine, or other obscure distros yet. My linux test PC specs are shown above, and the error is also shown above.
Devlog #32 I’m tired of working on this, I try one thing and it doesn’t work I try another even worse but I’m working to launch the zap for linux I just don’t have test packages or packages to release if any wants to launch their package on the zap let me know.
Devlog #33 The last devlog in stardance I know. Changing some little things with the help of codex because I am very exaust.
Ships:
Hello everyone! My project is a package manager built entirely in Python. I challenged myself to create something simple for everyone—both for the people creating the repository and for those who will use it. I am really proud of myself for dedicating so much effort to this project. ⚠️ Project Status & Requirements Please note that this project is currently in Beta and some commands might not be fully functional or ready yet. System Requirements: Python 3.0 or higher is required. To run the project in script mode, you must install the following dependencies: requests, colorama, and tqdm. Current Limitations: The tools inside repo-tools (used for creating repositories) are currently disabled while they undergo updates. In the meantime, if you want to create a repository, you can use the example index provided in the GitHub README and simply replace the package and file names with your own. If you have any questions or run into issues, please feel free to open an issue or ask here on GitHub. I am more than happy to help!
So, I built a package manager in Python. The biggest challenge I experienced was organizing my code, debugging, and building complex features. I’m proud that it works, and I’m proud of all the time I spent coding it. My project documentation is on GitHub, which is the best place I have to write and maintain it. Zap can install, remove, and download packages without installing them, as well as update packages and perform other features. Try out my project, and if you want to add your projects to the Zap repository, contact me on Slack or GitHub. Thanks for Reading!
ZAP or in the new name zip asset packager is a package manager build in python with no packages to manager. ZAP is easy to use am the linux version is not stable yet but it runs....
|
1793713913.1089177
|
1793800313.1089177
|
|
66209
|
My awesome macropad! by @Pradyumn | Stardance
|
Pradyumn
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Pradyumn | Stardan Title: My awesome macropad! by @Pradyumn | Stardance...
|
1793713917.106854
|
1794318717.106854
|
|
25027
|
Software Defined Radio Toolkit by @jotheexplorer12 Software Defined Radio Toolkit by @jotheexplorer123 | Stardance...
|
jotheexplorer123
|
1
|
5.62
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-02T15:04:53Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I was very excited when I got my first RTL-SDR and I could see the whole radio spectrum but I had to mainly scroll through hundreds and thousands of frequencies. I made a tool that lets a Python script access your RTL-SDR and scan frequencies and return the signal strength in decibels . Returning specific traffic or just for general traffic monitoring over a wide spectrum . It returns a JSON file in the same directory that looks like this:", "repo": "https://github.com/Damelhasen/SDR_SCANNER", "demo": "https://youtu.be/q_ZBCR3jcR8"}]...
|
[{"post_id": 85344, "ts": "202 [{"post_id": 85344, "ts": "2026-10-31T05:29:52Z", "hours": 0.6214, "text": "The RTL SDR scanning project is complete. It took me five hours, mostly troubleshooting, but I learned a great deal, how to use Py Pi and how to interface with an RTL SDR. I acquired this RTL SDR when I was very young. Watching YouTubers save for parts, track satellites, and receive satellite imagery was exciting. My motivation was to create a tool that could scan large spectrums like my handheld scanner. Existing SDR Sharp and SDR++ plugins didn’t offer an easy solution, so I built my own and am proud of the result. Through the project I learned how to interface the SDR system and many other skills. This tool will likely be used for tracking satellites, finding beacons, and supporting other projects such as my drone work. It’s available on my GitHub. It’s been a blast."}, {"post_id": 18146, "ts": "2026-06-29T05:03:32Z", "hours": 4.8592, "text": "Working on a simple Band scanner for the RTL-SDR"}]...
|
Title: Software Defined Radio Toolkit by @jotheexp Title: Software Defined Radio Toolkit by @jotheexplorer123 | Stardance
Devlogs:
Working on a simple Band scanner for the RTL-SDR
The RTL SDR scanning project is complete. It took me five hours, mostly troubleshooting, but I learned a great deal, how to use Py Pi and how to interface with an RTL SDR. I acquired this RTL SDR when I was very young. Watching YouTubers save for parts, track satellites, and receive satellite imagery was exciting. My motivation was to create a tool that could scan large spectrums like my handheld scanner. Existing SDR Sharp and SDR++ plugins didn’t offer an easy solution, so I built my own and am proud of the result. Through the project I learned how to interface the SDR system and many other skills. This tool will likely be used for tracking satellites, finding beacons, and supporting other projects such as my drone work. It’s available on my GitHub. It’s been a blast.
Ships:
I was very excited when I got my first RTL-SDR and I could see the whole radio spectrum but I had to mainly scroll through hundreds and thousands of frequencies. I made a tool that lets a Python script access your RTL-SDR and scan frequencies and return the signal strength in decibels . Returning specific traffic or just for general traffic monitoring over a wide spectrum . It returns a JSON file in the same directory that looks like this:...
|
1793713917.9887695
|
1793800317.9887695
|
|
66210
|
ZENO by @AyushSingh | Stardance
|
AyushSingh
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: ZENO by @AyushSingh | Stardance
|
1793713919.138261
|
1794318719.138261
|
|
24826
|
sparq by @elaine | Stardance
|
elaine
|
1
|
14.39
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-26T05:28:54Z", "hours": 12.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "wish you could predict the future? unfortunately, i cant help with that :( but my ML agent can! the agent that i’ve trained is capable of predicting the future and using what it predicts to pick the best action. this is my first real machine learning project, so i’m proud of my progress!", "repo": "https://github.com/ela1nex/customDQN", "demo": "https://youtu.be/5wtFexOzfos"}]...
|
[{"post_id": 16384, "ts": "202 [{"post_id": 16384, "ts": "2026-06-26T17:40:13Z", "hours": 2.3911, "text": "left: regular (no future prediction) right: dynamic (future prediction)"}, {"post_id": 15536, "ts": "2026-06-25T07:42:45Z", "hours": 11.7881, "text": "devlog #1: machine learning for dummies 😦 my first devlog! i probably shouldve done another devlog earlier since its now been 11 hours into this project but unfortunately i have the foresight of a seal so… anyway! join me on my machine learning learning (haha get it) journey! this is my first real foray into actually learning ML beyond using preexisting models, and its been super interesting so far. ive genuinely learned so much including but not limited to (very generally): DQN model: how to create a custom model and train and test it dynamic model: imagined states and being able to predict futures the usefulness of a configs file LOL TODO bc i am genuinely the most forgetful person you’ll ever meet anyway im not sure how much more i’ll work on this specific project since cartpole is super simple and i want to try nondiscrete action spaces which are more complicated and applicable. im working on learning offline training rn but thats probably going to be a separate project repo: https://github.com/ela1nex/customDQN below images: left: tested wo dynamic model right: tested w dynamic model (makes a super big difference!!)"}]...
|
Title: sparq by @elaine | Stardance
Devlogs:
devl Title: sparq by @elaine | Stardance
Devlogs:
devlog #1: machine learning for dummies 😦 my first devlog! i probably shouldve done another devlog earlier since its now been 11 hours into this project but unfortunately i have the foresight of a seal so… anyway! join me on my machine learning learning (haha get it) journey! this is my first real foray into actually learning ML beyond using preexisting models, and its been super interesting so far. ive genuinely learned so much including but not limited to (very generally): DQN model: how to create a custom model and train and test it dynamic model: imagined states and being able to predict futures the usefulness of a configs file LOL TODO bc i am genuinely the most forgetful person you’ll ever meet anyway im not sure how much more i’ll work on this specific project since cartpole is super simple and i want to try nondiscrete action spaces which are more complicated and applicable. im working on learning offline training rn but thats probably going to be a separate project repo: https://github.com/ela1nex/customDQN below images: left: tested wo dynamic model right: tested w dynamic model (makes a super big difference!!)
left: regular (no future prediction) right: dynamic (future prediction)
Ships:
wish you could predict the future? unfortunately, i cant help with that :( but my ML agent can! the agent that i’ve trained is capable of predicting the future and using what it predicts to pick the best action. this is my first real machine learning project, so i’m proud of my progress!...
|
1793713920.33877
|
1793800320.33877
|
|
66211
|
WarioWare Game by @abhilashkandula212 | Stardance
|
abhilashkandula212
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: WarioWare Game by @abhilashkandula212 | Sta Title: WarioWare Game by @abhilashkandula212 | Stardance...
|
1793713921.4482348
|
1794318721.4482348
|
|
25359
|
SkyOS by @samraat-756 | Stardance
|
samraat-756
|
2
|
12.0
|
12
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-29T06:55:26Z", "hours": 2.0, "multiplier": 5.59, "payout": 12, "blessing": "neutral", "text": "As a follow up to WebOS 1, I have added 3 more features to SkyOS, aswell as refined and simplified some redundant logic that runs the foundation of this web Operating System. The features added were: 1 - A desktop switcher for multi-tasking up to 5 different workspaces 2 - A weather widget in the top right corner displaying the current weather in the area 3 - A flight radar widget in the bottom right corner displaying the number of aircraft in your area, aswell as the details of the closest aircraft to you I also re worked the script.js logic to keep each app local to its designated workspace, so that even if you switch to another workspace, that app doesn’t close, and stays running in the background.", "repo": "https://github.com/samraatpchauhan-eng/SkyOS", "demo": "https://samraatpchauhan-eng.github.io/SkyOS/"}, {"ship_num": 2, "ts": "2026-06-28T18:54:19Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is SkyOS. An aviation themed Web Operating System, to turn your desktop into a virtual cockpit! For the asthetics I went with a clean frosted glass look, with aviation themed backgrounds and a grey color scheme. The most challenging part of this project was getting the formatting of the windows to line up with each other, and making the logic for each app. This was my first time working with html, so WebOS 1 was a learning experience for me. Overall I am pretty impressed with how SkyOS came out though.", "repo": "https://github.com/samraatpchauhan-eng/SkyOS", "demo": "https://samraatpchauhan-eng.github.io/SkyOS/"}]...
|
[{"post_id": 57117, "ts": "202 [{"post_id": 57117, "ts": "2026-08-29T06:49:33Z", "hours": 0.8039, "text": "My 3rd feature added to SkyOS is a nice little flight radar widget found at the bottom right corner of the desktop. I utilized the OpenSky API to display the number of aircraft in your area, and the callsign and altitude of the closest plane to your location. I will say the visual aspects of this feature was pretty easy to create, however is was the logic behind this that took some time to understand. Overall, I’m pretty happy about this feature! The only gripe I have is the limited amount of times you can call data from it, so I had to set the refresh rate to 60 seconds, which is a little slow."}, {"post_id": 46077, "ts": "2026-08-13T01:07:08Z", "hours": 0.7839, "text": "After a little bit of playing around with js and getting some help from online tutorials, I was able to create a workspace system, similarly found on most operating systems like Windows 11 or most Linux distros. You can use this for multitasking and can have up to 5 workspaces open at once with different apps opened in each one, without fear of them closing when switching desktops!"}, {"post_id": 46049, "ts": "2026-08-12T23:54:15Z", "hours": 0.5789, "text": "I have added a new feature for SkyOS! Using Meteomatic’s Open Meteo API, I was able to implement a weather widget in the top right corner of the desktop workspace, so you can see the current temperature in the area you are currently in."}, {"post_id": 17297, "ts": "2026-06-28T00:50:23Z", "hours": 0.6519, "text": "I have finally finished making the ACP (Audio Control Panel) app for SkyOS! It features 3 songs from msfs2020 and fsx, and features a song time display, and controls to skip and go back a track, and a play/pause button ofc."}, {"post_id": 17087, "ts": "2026-06-27T19:01:42Z", "hours": 0.9669, "text": "Finished creating the wallpapers app, to switch the background to 3 different images, a Boeing 777, Airbus a350, or F-22."}, {"post_id": 16778, "ts": "2026-06-27T07:44:41Z", "hours": 0.7544, "text": "At the time of making this devlog it is 12:14am. I am lwk exhausted, but just finished building my second, and so far most complicated app for SkyOS (in terms of the logic). It is a simple but functional Stopwatch cleverly called “Chrono”. I also want to mention ~1 hour out of the 3 hours logged in the second devlog, was spent building the chrono app"}, {"post_id": 16755, "ts": "2026-06-27T06:37:46Z", "hours": 3.9269, "text": "After a bit of struggle getting the formatting of the elements of SkyOS to work properly, I have finally finished my first app! I call it FlightLog, which is a place to type anything you want, and save it. It works similar to Windows 11’s NotePad application, but simpler."}, {"post_id": 15957, "ts": "2026-06-25T22:26:57Z", "hours": 3.4564, "text": "Finally got a hang of html, and JS! Curently was able to build the basic framework of the onboarding window, and the top bar of SkyOS. I also put a stock image of a Soutwest 737-800 as the background, as it appropriately fits the theme of SkyOS."}]...
|
Title: SkyOS by @samraat-756 | Stardance
Devlogs: Title: SkyOS by @samraat-756 | Stardance
Devlogs:
Finally got a hang of html, and JS! Curently was able to build the basic framework of the onboarding window, and the top bar of SkyOS. I also put a stock image of a Soutwest 737-800 as the background, as it appropriately fits the theme of SkyOS.
After a bit of struggle getting the formatting of the elements of SkyOS to work properly, I have finally finished my first app! I call it FlightLog, which is a place to type anything you want, and save it. It works similar to Windows 11’s NotePad application, but simpler.
At the time of making this devlog it is 12:14am. I am lwk exhausted, but just finished building my second, and so far most complicated app for SkyOS (in terms of the logic). It is a simple but functional Stopwatch cleverly called “Chrono”. I also want to mention ~1 hour out of the 3 hours logged in the second devlog, was spent building the chrono app
Finished creating the wallpapers app, to switch the background to 3 different images, a Boeing 777, Airbus a350, or F-22.
I have finally finished making the ACP (Audio Control Panel) app for SkyOS! It features 3 songs from msfs2020 and fsx, and features a song time display, and controls to skip and go back a track, and a play/pause button ofc.
I have added a new feature for SkyOS! Using Meteomatic’s Open Meteo API, I was able to implement a weather widget in the top right corner of the desktop workspace, so you can see the current temperature in the area you are currently in.
After a little bit of playing around with js and getting some help from online tutorials, I was able to create a workspace system, similarly found on most operating systems like Windows 11 or most Linux distros. You can use this for multitasking and can have up to 5 workspaces open at once with different apps opened in each one, without fear of them closing when switching desktops!
My 3rd feature added to SkyOS is a nice little flight radar widget found at the bottom right corner of the desktop. I utilized the OpenSky API to display the number of aircraft in your area, and the callsign and altitude of the closest plane to your location. I will say the visual aspects of this feature was pretty easy to create, however is was the logic behind this that took some time to understand. Overall, I’m pretty happy about this feature! The only gripe I have is the limited amount of times you can call data from it, so I had to set the refresh rate to 60 seconds, which is a little slow.
Ships:
This is SkyOS. An aviation themed Web Operating System, to turn your desktop into a virtual cockpit! For the asthetics I went with a clean frosted glass look, with aviation themed backgrounds and a grey color scheme. The most challenging part of this project was getting the formatting of the windows to line up with each other, and making the logic for each app. This was my first time working with html, so WebOS 1 was a learning experience for me. Overall I am pretty impressed with how SkyOS came out though.
As a follow up to WebOS 1, I have added 3 more features to SkyOS, aswell as refined and simplified some redundant logic that runs the foundation of this web Operating System. The features added were: 1 - A desktop switcher for multi-tasking up to 5 different workspaces 2 - A weather widget in the top right corner displaying the current weather in the area 3 - A flight radar widget in the bottom right corner displaying the number of aircraft in your area, aswell as the details of the closest aircraft to you I also re worked the script.js logic to keep each app local to its designated workspace, so that even if you switch to another workspace, that app doesn’t close, and stays running in the background....
|
1793713923.798978
|
1793800323.798978
|
|
23329
|
Orbit calculator by @whereami | Stardance
|
whereami
|
1
|
10.0
|
150
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-11T03:25:21Z", "hours": 10.0, "multiplier": 15.74, "payout": 150, "blessing": "neutral", "text": "I made a website where the user can calculate and visualize an orbit around a planetary object (or the Sun) based on their input parameters. The project actually started in March as a passion project, but I decided to turn it from a Python script to a proper website to make it more useful. Most of the obstacles I have to deal with are related to the calculations, but formatting the UI is also quite challenging. And since I made this website to make science a bit more friendly, the instructions are displayed on the website itself.", "repo": "https://github.com/phong765/Orbit-calculator/", "demo": "https://phong765.github.io/Orbit-calculator/"}]...
|
[{"post_id": 26344, "ts": "202 [{"post_id": 26344, "ts": "2026-07-11T02:34:41Z", "hours": 3.7175, "text": "Devlog #7 I’m close to accomplishing what I want for this project, and I will probably ship it soon. What I have changed I have solved the apogee, perigee problem using the eccentric vector I have added the option to choose which body in the solar system the user wants to orbit around. That means the radius and mass of the orbited object will change to reflect the physics involved. Added the ability to calculate the orbit period. Tidied up the UI What I will work on I think that I will ship it, and if I am suggested to change or add something, I will be very glad to implement it."}, {"post_id": 18967, "ts": "2026-06-30T04:32:39Z", "hours": 1.3783, "text": "Devlog #6 What I have changed: I have added additional information to the users regarding their calculation. When their orbit parameters result in the object either being below the atmosphere or crashing into the surface, a warning will appear in the result section. A warning will also be made if the parameters are invalid for an orbit around the Earth. I have also fixed the scrolling problem. The scrolling function is tied to the calculation button, and when the software hasn’t finished rendering the result image, the scroll function will scroll to the wrong place. Therefore I’ve added a delay to the scroll function so that it can wait for the completion of the rendering process. What I will work on The position of the apogee/perigee problem hasn’t been solved, mainly because it is quite math-heavy. That will be something I will try to solve in the long term, aside from other adjustments that I can carry out immediately."}, {"post_id": 15477, "ts": "2026-06-25T05:06:37Z", "hours": 1.1286, "text": "Devlog #5 What I have changed I have made some adjustments and rearrangements to the layout of the user interface to improve the user experience. I have also added a paragraph to explain how to use it and explain what the result and technical terms mean, and also explain the colors on the graph. Problems I will work on: The z=0 problem: currently, my script uses the z position provided by the user to determine the position of the apogee and perigee relative to the equator; thus, when the input for z is 0, the result isn’t satisfactory. I will probably use the velocity and the direction of rotation relative to the Earth to solve the problem. I will also add additional information to notify the user of the problems with their parameters(for example, their parameters will send the satellite into the ground or the orbit is physically impossible). The scroll function: I want the website to automatically scroll down to the result when the user presses the ”Calculate” button, but it seems like my script can’t detect where to scroll down yet. To fix this, I will try to update my internal JS script."}, {"post_id": 14873, "ts": "2026-06-24T04:32:12Z", "hours": 0.9803, "text": "I have finished transferring the Python code to the website. Now I will be custommizing and improving the user interface."}, {"post_id": 14375, "ts": "2026-06-23T14:13:27Z", "hours": 0.6953, "text": "I’m transferring my Python script to a website so that it’s easier to use, but the process is really messy. I plan to use PyScript, so if anyone knows how to pull this off, please let me know."}, {"post_id": 13510, "ts": "2026-06-22T03:30:26Z", "hours": 1.1094, "text": "I have completed the calculation for the apogee and perigee positions relative to the equator. I have also made some adjustments to the display of the result"}, {"post_id": 13142, "ts": "2026-06-21T14:42:40Z", "hours": 0.5394, "text": "I’m trying to determine the theta position of a given position. This will be a step toward determining where the apogee/perigee are relative to the equator."}]...
|
Title: Orbit calculator by @whereami | Stardance
Title: Orbit calculator by @whereami | Stardance
Devlogs:
I’m trying to determine the theta position of a given position. This will be a step toward determining where the apogee/perigee are relative to the equator.
I have completed the calculation for the apogee and perigee positions relative to the equator. I have also made some adjustments to the display of the result
I’m transferring my Python script to a website so that it’s easier to use, but the process is really messy. I plan to use PyScript, so if anyone knows how to pull this off, please let me know.
I have finished transferring the Python code to the website. Now I will be custommizing and improving the user interface.
Devlog #5 What I have changed I have made some adjustments and rearrangements to the layout of the user interface to improve the user experience. I have also added a paragraph to explain how to use it and explain what the result and technical terms mean, and also explain the colors on the graph. Problems I will work on: The z=0 problem: currently, my script uses the z position provided by the user to determine the position of the apogee and perigee relative to the equator; thus, when the input for z is 0, the result isn’t satisfactory. I will probably use the velocity and the direction of rotation relative to the Earth to solve the problem. I will also add additional information to notify the user of the problems with their parameters(for example, their parameters will send the satellite into the ground or the orbit is physically impossible). The scroll function: I want the website to automatically scroll down to the result when the user presses the ”Calculate” button, but it seems like my script can’t detect where to scroll down yet. To fix this, I will try to update my internal JS script.
Devlog #6 What I have changed: I have added additional information to the users regarding their calculation. When their orbit parameters result in the object either being below the atmosphere or crashing into the surface, a warning will appear in the result section. A warning will also be made if the parameters are invalid for an orbit around the Earth. I have also fixed the scrolling problem. The scrolling function is tied to the calculation button, and when the software hasn’t finished rendering the result image, the scroll function will scroll to the wrong place. Therefore I’ve added a delay to the scroll function so that it can wait for the completion of the rendering process. What I will work on The position of the apogee/perigee problem hasn’t been solved, mainly because it is quite math-heavy. That will be something I will try to solve in the long term, aside from other adjustments that I can carry out immediately.
Devlog #7 I’m close to accomplishing what I want for this project, and I will probably ship it soon. What I have changed I have solved the apogee, perigee problem using the eccentric vector I have added the option to choose which body in the solar system the user wants to orbit around. That means the radius and mass of the orbited object will change to reflect the physics involved. Added the ability to calculate the orbit period. Tidied up the UI What I will work on I think that I will ship it, and if I am suggested to change or add something, I will be very glad to implement it.
Ships:
I made a website where the user can calculate and visualize an orbit around a planetary object (or the Sun) based on their input parameters. The project actually started in March as a passion project, but I decided to turn it from a Python script to a proper website to make it more useful. Most of the obstacles I have to deal with are related to the calculations, but formatting the UI is also quite challenging. And since I made this website to make science a bit more friendly, the instructions are displayed on the website itself....
|
1793713925.8022683
|
1793800325.8022683
|
|
2992
|
Roamly by @Waxn | Stardance
|
Waxn
|
1
|
59.43
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-29T01:01:15Z", "hours": 26.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a comprehensive location tracking app. I have a very bad memory of places I have been and wanted a way to more easily see. Currently only available for Android.", "repo": "https://github.com/waxn/roamly", "demo": "https://roamly.cyou"}]...
|
[{"post_id": 83962, "ts": "202 [{"post_id": 83962, "ts": "2026-10-28T23:58:23Z", "hours": 29.8206, "text": "Auto flight importing! You can now paste in a flight number and a date, and Roamly will search opensky and extract data from your boarding pass (if uploaded) to super easily log fights."}, {"post_id": 23196, "ts": "2026-07-06T00:49:10Z", "hours": 3.6064, "text": "Focused on UI/UX for the first time."}, {"post_id": 18038, "ts": "2026-06-29T00:31:04Z", "hours": 2.4281, "text": "Added an admin page for the server admin"}, {"post_id": 17230, "ts": "2026-06-27T22:56:13Z", "hours": 5.8906, "text": "Fixed the mobile app location sending"}, {"post_id": 9590, "ts": "2026-06-15T23:47:51Z", "hours": 2.2314, "text": "Improved tracking reliability with the app"}, {"post_id": 9241, "ts": "2026-06-15T14:53:12Z", "hours": 4.2867, "text": "Fixed bug that resulted in CPU being pinned to 100%"}, {"post_id": 6332, "ts": "2026-06-10T17:36:13Z", "hours": 1.7381, "text": "WOrking on ai summaries"}, {"post_id": 5357, "ts": "2026-06-09T03:02:09Z", "hours": 1.7519, "text": "location-based journals anyone?"}, {"post_id": 4653, "ts": "2026-06-08T01:54:02Z", "hours": 3.8231, "text": "Working on making Nominatim not have limits by hosting locally"}, {"post_id": 2985, "ts": "2026-06-05T22:18:49Z", "hours": 3.6017, "text": "Worked on efficiency in mobile app"}]...
|
Title: Roamly by @Waxn | Stardance
Devlogs:
Worke Title: Roamly by @Waxn | Stardance
Devlogs:
Worked on efficiency in mobile app
Working on making Nominatim not have limits by hosting locally
location-based journals anyone?
WOrking on ai summaries
Fixed bug that resulted in CPU being pinned to 100%
Improved tracking reliability with the app
Fixed the mobile app location sending
Added an admin page for the server admin
Focused on UI/UX for the first time.
Auto flight importing! You can now paste in a flight number and a date, and Roamly will search opensky and extract data from your boarding pass (if uploaded) to super easily log fights.
Ships:
I made a comprehensive location tracking app. I have a very bad memory of places I have been and wanted a way to more easily see. Currently only available for Android....
|
1793713929.264549
|
1793800329.264549
|
|
66212
|
Solar by @Cherish9 | Stardance
|
Cherish9
|
0
|
6.14
|
0
|
[]
|
[{"post_id": 80328, "ts": "202 [{"post_id": 80328, "ts": "2026-10-17T09:43:37Z", "hours": 2.6497, "text": "FINALLY finished the enclosure abshsdhabbs me and FreeCAD be beefing all evening. I think i’m done for the design of this project! Just need to ship!"}, {"post_id": 78359, "ts": "2026-10-10T15:31:54Z", "hours": 0.5003, "text": "Coded a bit of the firmware, will refine later"}, {"post_id": 78089, "ts": "2026-10-09T15:16:51Z", "hours": 1.9011, "text": "I have spent hours just trying to figure out how to do my own design for the enclosure and it’s taking a bit too long so imma try doing firmware first"}, {"post_id": 74821, "ts": "2026-09-28T11:39:21Z", "hours": 1.0847, "text": "Starting my first PCB project!! So excited, I just started learning PCBs and thought this would be a great way to start building. I’m thinking of a goth-ish moon themed alarm clock (I’ll lapse myself sketching it later) but here’s the PCB so far!"}]...
|
Title: Solar by @Cherish9 | Stardance
Devlogs:
St Title: Solar by @Cherish9 | Stardance
Devlogs:
Starting my first PCB project!! So excited, I just started learning PCBs and thought this would be a great way to start building. I’m thinking of a goth-ish moon themed alarm clock (I’ll lapse myself sketching it later) but here’s the PCB so far!
I have spent hours just trying to figure out how to do my own design for the enclosure and it’s taking a bit too long so imma try doing firmware first
Coded a bit of the firmware, will refine later
FINALLY finished the enclosure abshsdhabbs me and FreeCAD be beefing all evening. I think i’m done for the design of this project! Just need to ship!...
|
1793713930.4564285
|
1794318730.4564285
|
|
66213
|
mp3 song player by @abhilashkandula212 | Stardance
|
abhilashkandula212
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mp3 song player by @abhilashkandula212 | St Title: mp3 song player by @abhilashkandula212 | Stardance...
|
1793713931.6336057
|
1794318731.6336057
|
|
66214
|
Alarm Clock by @Nandu13 | Stardance
|
Nandu13
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Alarm Clock by @Nandu13 | Stardance
|
1793713932.5020452
|
1794318732.5020452
|
|
25521
|
Rchive by @priyanshu | Stardance
|
priyanshu
|
1
|
30.0
|
114
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-20T08:59:42Z", "hours": 30.0, "multiplier": 7.55, "payout": 114, "blessing": "neutral", "text": "I made a offline first notes app this works completely offline and UI design is awesome. So far I have added things that are core in future releases I will be adding security features like biometeric lock and e2e encryption for now it store in a local database already secure. Hope it makes sense for you guys. looking for good response", "repo": "https://github.com/P8labs/rchive", "demo": "https://github.com/P8labs/rchive/releases"}]...
|
[{"post_id": 31675, "ts": "202 [{"post_id": 31675, "ts": "2026-07-20T08:55:12Z", "hours": 4.5811, "text": "I have finally finished V1 for Rchive. GH action is running to release apk rn. and if that finish (this is third try) i feel it will this time. than I am good to go i have tested all so far and I tried to make UI the best I can. App Size it little big as I am using custom fonts may be in future i will fix it too."}, {"post_id": 25972, "ts": "2026-07-10T14:45:59Z", "hours": 2.4961, "text": "I have rewrote the UI and removed that extra fs thing instead now all in one db"}, {"post_id": 19088, "ts": "2026-06-30T09:16:23Z", "hours": 6.9672, "text": "Today I am able to make it work I have removed separate database from vault and added a syncing logic when vault is opened a sync fn is ran that registers all the entries of the vault also fixed treeURI and location as there is some android restrictions. Also fixed alot of bugs now, we can create notes easily backend part is almost done only presentation is remaining."}, {"post_id": 16916, "ts": "2026-06-27T14:03:36Z", "hours": 3.1078, "text": "I have implemented a separate package for SAF android storage access it will just help a lot"}, {"post_id": 16731, "ts": "2026-06-27T05:35:16Z", "hours": 1.7894, "text": "Finally I have added AppState currently solved that default vault implementation but I will change it again in currrent version isDefault is the field of vault registry but it makes it dependent on vault feature so i will be changing it will remove this from vault entry and keep it into app config database"}, {"post_id": 16319, "ts": "2026-06-26T15:32:07Z", "hours": 2.5961, "text": "I have implemented two separate db one for app database and other is for vault level db in which only vault related things will store"}, {"post_id": 16119, "ts": "2026-06-26T06:29:24Z", "hours": 4.3269, "text": "i think i need redesign currently I have mixed alot mixing sharedprefs, drift db, onboarding and vault management. Now, I am going to fix and rewrite my logic now is to remove shared prefs and have a app database that will be private if app deletes it will be deleted. The flow will be when user opens app it will load data from this main appdatabase all vaults and its data this database will store only app data like logs, config, vault data and default vault if no vault opened user can open existing or create new that will register it into appdatabase than when the vault opens will create a separate vault database that will have all data related to vault only that can be synced. as i am following MVVM clean architecture: We will have features as follows for now simple comman - AppDatabase Vault, - this is a separate feature Notes, - it is separate thing"}, {"post_id": 15537, "ts": "2026-06-25T07:47:33Z", "hours": 1.2239, "text": "New note auto markdown view added with custom package and patches."}, {"post_id": 15512, "ts": "2026-06-25T06:30:08Z", "hours": 3.1181, "text": "I am working on authentication and learning clean architecture MVVM"}]...
|
Title: Rchive by @priyanshu | Stardance
Devlogs:
Title: Rchive by @priyanshu | Stardance
Devlogs:
I am working on authentication and learning clean architecture MVVM
New note auto markdown view added with custom package and patches.
i think i need redesign currently I have mixed alot mixing sharedprefs, drift db, onboarding and vault management. Now, I am going to fix and rewrite my logic now is to remove shared prefs and have a app database that will be private if app deletes it will be deleted. The flow will be when user opens app it will load data from this main appdatabase all vaults and its data this database will store only app data like logs, config, vault data and default vault if no vault opened user can open existing or create new that will register it into appdatabase than when the vault opens will create a separate vault database that will have all data related to vault only that can be synced. as i am following MVVM clean architecture: We will have features as follows for now simple comman - AppDatabase Vault, - this is a separate feature Notes, - it is separate thing
I have implemented two separate db one for app database and other is for vault level db in which only vault related things will store
Finally I have added AppState currently solved that default vault implementation but I will change it again in currrent version isDefault is the field of vault registry but it makes it dependent on vault feature so i will be changing it will remove this from vault entry and keep it into app config database
I have implemented a separate package for SAF android storage access it will just help a lot
Today I am able to make it work I have removed separate database from vault and added a syncing logic when vault is opened a sync fn is ran that registers all the entries of the vault also fixed treeURI and location as there is some android restrictions. Also fixed alot of bugs now, we can create notes easily backend part is almost done only presentation is remaining.
I have rewrote the UI and removed that extra fs thing instead now all in one db
I have finally finished V1 for Rchive. GH action is running to release apk rn. and if that finish (this is third try) i feel it will this time. than I am good to go i have tested all so far and I tried to make UI the best I can. App Size it little big as I am using custom fonts may be in future i will fix it too.
Ships:
I made a offline first notes app this works completely offline and UI design is awesome. So far I have added things that are core in future releases I will be adding security features like biometeric lock and e2e encryption for now it store in a local database already secure. Hope it makes sense for you guys. looking for good response...
|
1793713933.7052512
|
1793800333.7052512
|
|
66215
|
WarioWare Game by @abuthwahir098 | Stardance
|
abuthwahir098
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: WarioWare Game by @abuthwahir098 | Stardanc Title: WarioWare Game by @abuthwahir098 | Stardance...
|
1793713934.8923159
|
1794318734.8923159
|
|
50198
|
InterOS by @Vihaan15 | Stardance
|
Vihaan15
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-18T12:14:17Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "It is my first webOS. It is inspired by the combination of Windows and macOS. By opening the link, you will directly get yourself into the InterOS. Click on the icons to open them and click the red dot to close the window. Hold the top of the window to drag the window anywhere you wish.", "repo": "https://github.com/Vihaan6119/InterOS", "demo": "https://vihaan6119.github.io/InterOS/"}]...
|
[{"post_id": 49518, "ts": "202 [{"post_id": 49518, "ts": "2026-08-18T12:06:33Z", "hours": 0.6272, "text": "finished my first WebOS Named it: InterOS"}, {"post_id": 48834, "ts": "2026-08-17T11:51:32Z", "hours": 1.4664, "text": "Finished half of my work"}]...
|
Title: InterOS by @Vihaan15 | Stardance
Devlogs:
Title: InterOS by @Vihaan15 | Stardance
Devlogs:
Finished half of my work
finished my first WebOS Named it: InterOS
Ships:
It is my first webOS. It is inspired by the combination of Windows and macOS. By opening the link, you will directly get yourself into the InterOS. Click on the icons to open them and click the red dot to close the window. Hold the top of the window to drag the window anywhere you wish....
|
1793713935.7633672
|
1793800335.7633672
|
|
52754
|
Expense Tracker by @gravityonmars | Stardance
|
gravityonmars
|
1
|
2.0
|
2
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-22T10:14:16Z", "hours": 2.0, "multiplier": 1.09, "payout": 2, "blessing": "neutral", "text": "So I made and Expense Tracker, its basically a CLI based program that tracks expense in 4 specific categories and 1 other categories, user can create there account, login to the account, add expense and see expense", "repo": "https://github.com/gravityonmars/Expense-Tracker", "demo": "https://github.com/gravityonmars/Expense-Tracker/releases/tag/v0.1.0"}]...
|
[{"post_id": 52219, "ts": "202 [{"post_id": 52219, "ts": "2026-08-22T09:58:19Z", "hours": 0.6769, "text": "Now a user can Add Expense and View the list your there expense and also I use datetime of python to get the exact date and time user added the expense"}, {"post_id": 52193, "ts": "2026-08-22T08:58:51Z", "hours": 0.875, "text": "Added User account create and Login function, it was quite similar with my last Bank Management System project so it was easy for me to do it."}]...
|
Title: Expense Tracker by @gravityonmars | Stardan Title: Expense Tracker by @gravityonmars | Stardance
Devlogs:
Added User account create and Login function, it was quite similar with my last Bank Management System project so it was easy for me to do it.
Now a user can Add Expense and View the list your there expense and also I use datetime of python to get the exact date and time user added the expense
Ships:
So I made and Expense Tracker, its basically a CLI based program that tracks expense in 4 specific categories and 1 other categories, user can create there account, login to the account, add expense and see expense...
|
1793713936.892377
|
1793800336.892377
|
|
66216
|
ResQ bot 9k by @Yogi_ | Stardance
|
Yogi_
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: ResQ bot 9k by @Yogi_ | Stardance
|
1793713938.0259917
|
1794318738.0259917
|
|
52770
|
Make a Slack Bot by @ajakovski07 | Stardance
|
ajakovski07
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-23T10:31:08Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a basic Slack bot out of the provided tutorial. It was my first time hosting something 24/7 thanks to hack clubs nest server and it was an amazing experience. I had a lot of issues with the version control, command prompting it and etc. But i got my way around!!! It was a super easy, fun and educational thing for me that will surely help me in the future to make even harder projects like theese. For using my slack bot…. Just type /smartio-help Byeeee", "repo": "https://github.com/Ajakovski/Make-a-Slack-Bot", "demo": "https://hackclub.enterprise.slack.com/archives/C0BSYLSSPQQ"}]...
|
[{"post_id": 52950, "ts": "202 [{"post_id": 52950, "ts": "2026-08-23T10:19:22Z", "hours": 1.2833, "text": "Made my slack bot 24/7 Finally after having loads of issues with finding the correct ssh key BECAUSE MY PC AND COMMAND PANELS ALWAYS FIND A WAY TO MAKE IT DIFFICULT. No but honestly i never completed a guide as it should be because i have downloaded so much stuff for coding that they intersect with eachother whenever i start command prompting. Next stop: Making the repo look nicer and submitting it :)"}, {"post_id": 52383, "ts": "2026-08-22T14:33:59Z", "hours": 1.8, "text": "Building the Slack Bot pt.1 Waiting for the Nest approval…. Also thanks to my limitations for safety that i did as a child on VSCode now i barely managed to use git commands. Had to go astray from the official guide and figure it out myself by opening external terminals because the one in VSCode had some insane protection rules implied. Its a basic bot for the project but i did learn a lot so it was pretty fun. IDEK if this is supposed to go in a devlog XDDD"}]...
|
Title: Make a Slack Bot by @ajakovski07 | Stardanc Title: Make a Slack Bot by @ajakovski07 | Stardance
Devlogs:
Building the Slack Bot pt.1 Waiting for the Nest approval…. Also thanks to my limitations for safety that i did as a child on VSCode now i barely managed to use git commands. Had to go astray from the official guide and figure it out myself by opening external terminals because the one in VSCode had some insane protection rules implied. Its a basic bot for the project but i did learn a lot so it was pretty fun. IDEK if this is supposed to go in a devlog XDDD
Made my slack bot 24/7 Finally after having loads of issues with finding the correct ssh key BECAUSE MY PC AND COMMAND PANELS ALWAYS FIND A WAY TO MAKE IT DIFFICULT. No but honestly i never completed a guide as it should be because i have downloaded so much stuff for coding that they intersect with eachother whenever i start command prompting. Next stop: Making the repo look nicer and submitting it :)
Ships:
I made a basic Slack bot out of the provided tutorial. It was my first time hosting something 24/7 thanks to hack clubs nest server and it was an amazing experience. I had a lot of issues with the version control, command prompting it and etc. But i got my way around!!! It was a super easy, fun and educational thing for me that will surely help me in the future to make even harder projects like theese. For using my slack bot…. Just type /smartio-help Byeeee...
|
1793713938.8841531
|
1793800338.8841531
|
|
52798
|
VidNote by @Kartikey26 | Stardance
|
Kartikey26
|
1
|
6.0
|
79
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-26T08:04:14Z", "hours": 6.0, "multiplier": 12.87, "payout": 79, "blessing": "neutral", "text": "Mission Completed VidNote V1 is live 🎬⚡ Taking notes on YouTube programming tutorials has too much friction, switching tabs makes you lose your pace or remembering where you left your tutorial is too time consuming. So I built VidNote. It’s a Chrome Extension that lets you take timestamped notes/videomark without ever leaving the video. The Stack & Features: Manifest V3 & Vanilla JS DOM Injection: Injects a native “📝 Note” button directly into the YouTube control bar. Zero-Friction Hotkey: Hit Alt+N while watching, the video auto-pauses, you type your note, hit enter, and it auto-resumes. The Teleporter: Click a timestamp in the popup to instantly jump the video back to that exact second. Local Storage & Export: Notes save locally and can be copied to your clipboard in one click for Notion/Obsidian. It’s not a billion-dollar startup, but it solves my exact problem See how it works: https://youtu.be/08dv63YkPuk?si=P_uNvBjuAs3gAz8J", "repo": "https://github.com/kartikeynegi25/VidNote", "demo": "https://github.com/kartikeynegi25/VidNote/releases"}]...
|
[{"post_id": 54922, "ts": "202 [{"post_id": 54922, "ts": "2026-08-26T04:34:18Z", "hours": 2.5278, "text": "So i added a copy all button so you can copy all your timestamped notes in clipboard also there is a shortcut ‘ALT+N’ to quickly take notes and a little note button sits right inside your youtube video to make it even more accessible while significantly improving its UI!!"}, {"post_id": 53576, "ts": "2026-08-24T05:32:02Z", "hours": 2.1597, "text": "So today I tested my extension as the basic structure is complete it is working good just had some problem to add the delete button as it was not visible earlier then replaced it with x emoji so it is now perfect now will add some more functionality to it and work more on its structure and looks ;)"}, {"post_id": 52859, "ts": "2026-08-23T07:04:11Z", "hours": 1.4506, "text": "So today I start my new project VidNote a chrome extension that helps you take timestamped notes while watching youtube videos or work as your yt video bookmark so you can know where you were and what you were doing. Today I learned about Chrome extensions how they work and the main file for extension the manifest.json file also made basic popup.js file"}]...
|
Title: VidNote by @Kartikey26 | Stardance
Devlogs Title: VidNote by @Kartikey26 | Stardance
Devlogs:
So today I start my new project VidNote a chrome extension that helps you take timestamped notes while watching youtube videos or work as your yt video bookmark so you can know where you were and what you were doing. Today I learned about Chrome extensions how they work and the main file for extension the manifest.json file also made basic popup.js file
So today I tested my extension as the basic structure is complete it is working good just had some problem to add the delete button as it was not visible earlier then replaced it with x emoji so it is now perfect now will add some more functionality to it and work more on its structure and looks ;)
So i added a copy all button so you can copy all your timestamped notes in clipboard also there is a shortcut ‘ALT+N’ to quickly take notes and a little note button sits right inside your youtube video to make it even more accessible while significantly improving its UI!!
Ships:
Mission Completed VidNote V1 is live 🎬⚡ Taking notes on YouTube programming tutorials has too much friction, switching tabs makes you lose your pace or remembering where you left your tutorial is too time consuming. So I built VidNote. It’s a Chrome Extension that lets you take timestamped notes/videomark without ever leaving the video. The Stack & Features: Manifest V3 & Vanilla JS DOM Injection: Injects a native “📝 Note” button directly into the YouTube control bar. Zero-Friction Hotkey: Hit Alt+N while watching, the video auto-pauses, you type your note, hit enter, and it auto-resumes. The Teleporter: Click a timestamp in the popup to instantly jump the video back to that exact second. Local Storage & Export: Notes save locally and can be copied to your clipboard in one click for Notion/Obsidian. It’s not a billion-dollar startup, but it solves my exact problem See how it works: https://youtu.be/08dv63YkPuk?si=P_uNvBjuAs3gAz8J...
|
1793713940.0324447
|
1793800340.0324447
|
|
21024
|
mythicalOS by @ele-na | Stardance
|
ele-na
|
2
|
19.0
|
61
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-24T22:04:35Z", "hours": 12.0, "multiplier": 5.11, "payout": 61, "blessing": "neutral", "text": "this is a web-based OS made with html, css and javascript! features: login (password is 1234) notebook (markdown and code accepted) gallery (upload pictures) calculator spotify player calendar terminal to-do list system monitor search bar quick links time and weather tracker (easter egg found here) challenges: ZERO time to work bugs bugs bugs previous versions: elenaOS (june 2026) kpopOS (august 2026) enjoy!", "repo": "https://github.com/ele-na2011/elena.com", "demo": "https://ele-na2011.github.io/elena.com/"}, {"ship_num": 2, "ts": "2026-06-28T17:46:04Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i made an OS that basically just holds my personal profile. it’s pretty basic for now, just a welcome screen, spotify player, blog, and resume but i will add more in the future note: the spotify is a fixed widget bc yall are obligated to listen to my amazing music taste ty SerenityUX for the amazing guide ty google for the search engine ty claude for saving me from mental collapse during debugging future updates: add more apps (gallery app hopefully), make UI better, add location tracking for real time weather and stuff basically js make it do more things", "repo": "https://github.com/ele-na2011/elena.com", "demo": "https://ele-na2011.github.io/elena.com/"}]...
|
[{"post_id": 82464, "ts": "202 [{"post_id": 82464, "ts": "2026-10-24T21:52:20Z", "hours": 2.5528, "text": "well i genuinely have not touched vscode since i went back to school (and i ran out of codespace storage asw) so here we are i just genuinely deleted everything that wasn’t working. last devlog before submission :)))"}, {"post_id": 66292, "ts": "2026-09-12T01:18:36Z", "hours": 0.6428, "text": "school’s started up, and i’ve lowk really been slacking (just doing my sticky streak w this project now ig) and i’ve lowk spent the past couple of days working on fixing a bug and adding a todo app. i’ve also added more features to the terminal, but yeah! next i’ll start working on the password feature and the other uh feature then it should be ready to ship! (except more bugs are showing up endlessly haha)"}, {"post_id": 63531, "ts": "2026-09-07T13:24:07Z", "hours": 1.1717, "text": "hii so i’ve been busy lately (schools starting up and ive also been locking in on snowglobe!!) but i’ve worked some more on this i added 2 more apps: a terminal and a newsfeed. the newsfeed uses an api endpoint to call the news, and i’m planning on adding more features to the terminal! i’ve also fixed the dragging issue thank god….acc no im just looking at it rn and fahh yo im acc done w ts i also changed the font to ceveat, and i think the ui looks a lot more cozy now (i still need to change the font in the terminal tho haha). today i also updated the readme!! later i’ll add all the icons (lowk cant find a newsfeed or terminal one but thats okay), work on the ui (and the FRICKING dragging issue bruhhh) then keep working on the secret feature!! i also want to make the os only accessible via a password, but thats a feature for the future ykk"}, {"post_id": 62284, "ts": "2026-09-05T16:05:46Z", "hours": 0.7583, "text": "yesterday and today i’ve just been working on the ui, which means adding icons, etc etc and also making the window look more like a window (hint at tuff feature trust) the window drag program broke again (idek why) so i’m tryna figure out how to fix that (debugging is not fun) and i wanna figure out how to open mini windows inside the webOS to make it more like an OS"}, {"post_id": 61507, "ts": "2026-09-04T13:39:10Z", "hours": 0.7083, "text": "today i mostly just customized stuff. i added a favicon (just to it looks more polished), icons for all the apps, and im working on changing the cursor inside the site im trying to find a tuff font but imo all the more modern UI ones look vibecoded idk"}, {"post_id": 61212, "ts": "2026-09-04T01:12:04Z", "hours": 2.3611, "text": "today i did a lot of work, mostly on this really tuff new feature im adding (ima call it touching grass for now), i reprogrammed the welcome screen, and got the basic format down the ui rn looks vibecoded (which it lowk is cuz i needed it cleaned up for testing) but i will go through it tmr and redesign everything (cuz as much as it fits the vibe it does look chopped asf)"}, {"post_id": 60684, "ts": "2026-09-03T06:58:40Z", "hours": 0.5658, "text": "okay so today i rebranded again (it was too hard to think up a UI theme for kpop and i’m too lazy to change the wallpaper (feature coming soon tho dw) i cleaned up some formatting so it’s slightly easier to test, and i’m working on a toolbar thats similar to those that run on actual laptops"}, {"post_id": 49900, "ts": "2026-08-18T21:17:55Z", "hours": 0.6858, "text": "today i started the rebrand by firstly, deleting a lot of code, and secondly, deciding some features. i deleted the resume, the notebook (gonna make a better one ofc) and the original welcome screen im pretty much done the intro screen, i’m not gonna make it reopenable it’s just gonna be a separate tab type shi (and its very neutral) i’m still debating whether to have separate themes for each kpop group (i’m gonna start w seventeen and enhypen first just to make sure ik changing it works, and everything would be easier as i would just have the icons like pictures of the group and stuff) or have the user themselves upload a background and stuff i relocated the top bar to the bottom center (still have to work on the formatting and stuff ofc) i’m thinking about what apps to build, definitely need weverse, mnet, spotify (already built, i’ll just keep it), a pomodoro timer, etc etc"}, {"post_id": 42977, "ts": "2026-08-07T23:48:50Z", "hours": 0.8789, "text": "okay so now that i have my very professional site, it’s time for the very exciting rebrand of ElenaOS i’m brainstorming themes rn, but i think i might make a kpopOS (because i really like kpop ofc lol) this is going to be a lot of work lol (essentially starting over again) but let’s see where this goes"}, {"post_id": 29123, "ts": "2026-07-15T19:47:50Z", "hours": 0.7731, "text": "today i was pretty productive and added some apps. i think everything started getting easier once i started getting the hang of things with adding new apps and ensuring that they can open and close normally and stuff i added a grade calculator and embedded a google calendar in there as well i want to be able to sync a lot of things in the OS to my google account so that I don’t have to set up extra time to go update the site"}, {"post_id": 28629, "ts": "2026-07-15T00:19:31Z", "hours": 0.7594, "text": "i haven’t worked on this in a while (since the ship was approving lmao) but today i added a gallery app (as promised from the last ship) im not gonna worry too much about actual OS aesthetics until I have a couple more fully functional apps, then ima see if I can animate the background or smt i also wanna code a OS pet but thats a project for slightly later lmao anyways about the gallery app, its just gonna be a simple carousel to demonstrate my projects and stuff. highkey i regret creating this OS all about myself especially after they dropped the new personal website mission but oh well"}, {"post_id": 17735, "ts": "2026-06-28T17:29:22Z", "hours": 0.6325, "text": "this is prob the last devlog before i ship this project for the first time i added a resume and made that draggable also fixed some bugs… (a lot of bugs) in the top bar i also added a temperature tracking module that tracks the temperature in a random town (its pretty tuff) but someday i will update it to match the location of the user ima add some actual articles to the notebook someday the spotify remains a widget anyways all of this will be completed in elenaOS2.0!!"}, {"post_id": 17334, "ts": "2026-06-28T02:25:15Z", "hours": 2.6892, "text": "its been a long day lmao i got the dragging bug fixed and created the notebook app, still working on some formatting issues but its going well. i decided to make it a blog of some sort that i can update through the html code pretty easily and u can basically access it through a dropdown menu instead of a sidebar i decided to make the spotify permanently fixed on the screen and so i deleted its handle and close button (partly bc i couldnt get the click-> open function to work and i didn’t want to deal with it tdy) im probably js gonna make all the apps collectively located on the left and have them open on the right and thus have some sort of control panel on the left the vision is coming together gng ima go brainstorm the new app now :)"}, {"post_id": 16524, "ts": "2026-06-26T21:45:44Z", "hours": 0.8669, "text": "help gng the bugs r only getting worse i added a spotify player and a notebook thingy but i js need the notebook to be closed when the program starts and open on click the drift problem applies to all 3 of the tiny windows now and claude aint fixing it i like the spotify player tho bc its the only thing that works ToT im acc so done (small thing but ima upload a playlist cover cuz i dont like the blue scheme of the playlist) and if i dont drag the others the notebook wont even drag so that needs to be fixed asw"}, {"post_id": 16382, "ts": "2026-06-26T17:39:59Z", "hours": 1.1119, "text": "its been quite a while of trying to debug the drifting problem, so i decided to just go ahead and add some more stuff im trying to add a spotify player and the app thats described in the guide it looks tuff, js some more problems to fix"}, {"post_id": 16254, "ts": "2026-06-26T12:37:47Z", "hours": 1.0319, "text": "oki so between last night and this morning i js kept going with the guide and added some backgrounds and graphics, as well as the timekeeper im currently working on the dragging function, which is bugging out a bit rn but i will figure it out (trust!) i also want to figure out a way to add boundaries so that i wont be able to js drag the window completely off the screen (as shown below lol)"}, {"post_id": 16039, "ts": "2026-06-26T01:50:05Z", "hours": 0.2667, "text": "hi gng first devlog ever so here goes tdy i finally got hackatime, github and my vscode all connected and set up. i haven’t coded HTML since over 5 yrs ago so i dont rlly remember anything so im starting from scratch again yay!! the guides r rlly helpful and im finally recalling some of my past knowledge and i managed to get a decent looking webos started im tired so ima continue this tmr but hey at least its started ykyk"}]...
|
Title: mythicalOS by @ele-na | Stardance
Devlogs: Title: mythicalOS by @ele-na | Stardance
Devlogs:
hi gng first devlog ever so here goes tdy i finally got hackatime, github and my vscode all connected and set up. i haven’t coded HTML since over 5 yrs ago so i dont rlly remember anything so im starting from scratch again yay!! the guides r rlly helpful and im finally recalling some of my past knowledge and i managed to get a decent looking webos started im tired so ima continue this tmr but hey at least its started ykyk
oki so between last night and this morning i js kept going with the guide and added some backgrounds and graphics, as well as the timekeeper im currently working on the dragging function, which is bugging out a bit rn but i will figure it out (trust!) i also want to figure out a way to add boundaries so that i wont be able to js drag the window completely off the screen (as shown below lol)
its been quite a while of trying to debug the drifting problem, so i decided to just go ahead and add some more stuff im trying to add a spotify player and the app thats described in the guide it looks tuff, js some more problems to fix
help gng the bugs r only getting worse i added a spotify player and a notebook thingy but i js need the notebook to be closed when the program starts and open on click the drift problem applies to all 3 of the tiny windows now and claude aint fixing it i like the spotify player tho bc its the only thing that works ToT im acc so done (small thing but ima upload a playlist cover cuz i dont like the blue scheme of the playlist) and if i dont drag the others the notebook wont even drag so that needs to be fixed asw
its been a long day lmao i got the dragging bug fixed and created the notebook app, still working on some formatting issues but its going well. i decided to make it a blog of some sort that i can update through the html code pretty easily and u can basically access it through a dropdown menu instead of a sidebar i decided to make the spotify permanently fixed on the screen and so i deleted its handle and close button (partly bc i couldnt get the click-> open function to work and i didn’t want to deal with it tdy) im probably js gonna make all the apps collectively located on the left and have them open on the right and thus have some sort of control panel on the left the vision is coming together gng ima go brainstorm the new app now :)
this is prob the last devlog before i ship this project for the first time i added a resume and made that draggable also fixed some bugs… (a lot of bugs) in the top bar i also added a temperature tracking module that tracks the temperature in a random town (its pretty tuff) but someday i will update it to match the location of the user ima add some actual articles to the notebook someday the spotify remains a widget anyways all of this will be completed in elenaOS2.0!!
i haven’t worked on this in a while (since the ship was approving lmao) but today i added a gallery app (as promised from the last ship) im not gonna worry too much about actual OS aesthetics until I have a couple more fully functional apps, then ima see if I can animate the background or smt i also wanna code a OS pet but thats a project for slightly later lmao anyways about the gallery app, its just gonna be a simple carousel to demonstrate my projects and stuff. highkey i regret creating this OS all about myself especially after they dropped the new personal website mission but oh well
today i was pretty productive and added some apps. i think everything started getting easier once i started getting the hang of things with adding new apps and ensuring that they can open and close normally and stuff i added a grade calculator and embedded a google calendar in there as well i want to be able to sync a lot of things in the OS to my google account so that I don’t have to set up extra time to go update the site
okay so now that i have my very professional site, it’s time for the very exciting rebrand of ElenaOS i’m brainstorming themes rn, but i think i might make a kpopOS (because i really like kpop ofc lol) this is going to be a lot of work lol (essentially starting over again) but let’s see where this goes
today i started the rebrand by firstly, deleting a lot of code, and secondly, deciding some features. i deleted the resume, the notebook (gonna make a better one ofc) and the original welcome screen im pretty much done the intro screen, i’m not gonna make it reopenable it’s just gonna be a separate tab type shi (and its very neutral) i’m still debating whether to have separate themes for each kpop group (i’m gonna start w seventeen and enhypen first just to make sure ik changing it works, and everything would be easier as i would just have the icons like pictures of the group and stuff) or have the user themselves upload a background and stuff i relocated the top bar to the bottom center (still have to work on the formatting and stuff ofc) i’m thinking about what apps to build, definitely need weverse, mnet, spotify (already built, i’ll just keep it), a pomodoro timer, etc etc
okay so today i rebranded again (it was too hard to think up a UI theme for kpop and i’m too lazy to change the wallpaper (feature coming soon tho dw) i cleaned up some formatting so it’s slightly easier to test, and i’m working on a toolbar thats similar to those that run on actual laptops
today i did a lot of work, mostly on this really tuff new feature im adding (ima call it touching grass for now), i reprogrammed the welcome screen, and got the basic format down the ui rn looks vibecoded (which it lowk is cuz i needed it cleaned up for testing) but i will go through it tmr and redesign everything (cuz as much as it fits the vibe it does look chopped asf)
today i mostly just customized stuff. i added a favicon (just to it looks more polished), icons for all the apps, and im working on changing the cursor inside the site im trying to find a tuff font but imo all the more modern UI ones look vibecoded idk
yesterday and today i’ve just been working on the ui, which means adding icons, etc etc and also making the window look more like a window (hint at tuff feature trust) the window drag program broke again (idek why) so i’m tryna figure out how to fix that (debugging is not fun) and i wanna figure out how to open mini windows inside the webOS to make it more like an OS
hii so i’ve been busy lately (schools starting up and ive also been locking in on snowglobe!!) but i’ve worked some more on this i added 2 more apps: a terminal and a newsfeed. the newsfeed uses an api endpoint to call the news, and i’m planning on adding more features to the terminal! i’ve also fixed the dragging issue thank god….acc no im just looking at it rn and fahh yo im acc done w ts i also changed the font to ceveat, and i think the ui looks a lot more cozy now (i still need to change the font in the terminal tho haha). today i also updated the readme!! later i’ll add all the icons (lowk cant find a newsfeed or terminal one but thats okay), work on the ui (and the FRICKING dragging issue bruhhh) then keep working on the secret feature!! i also want to make the os only accessible via a password, but thats a feature for the future ykk
school’s started up, and i’ve lowk really been slacking (just doing my sticky streak w this project now ig) and i’ve lowk spent the past couple of days working on fixing a bug and adding a todo app. i’ve also added more features to the terminal, but yeah! next i’ll start working on the password feature and the other uh feature then it should be ready to ship! (except more bugs are showing up endlessly haha)
well i genuinely have not touched vscode since i went back to school (and i ran out of codespace storage asw) so here we are i just genuinely deleted everything that wasn’t working. last devlog before submission :)))
Ships:
i made an OS that basically just holds my personal profile. it’s pretty basic for now, just a welcome screen, spotify player, blog, and resume but i will add more in the future note: the spotify is a fixed widget bc yall are obligated to listen to my amazing music taste ty SerenityUX for the amazing guide ty google for the search engine ty claude for saving me from mental collapse during debugging future updates: add more apps (gallery app hopefully), make UI better, add location tracking for real time weather and stuff basically js make it do more things
this is a web-based OS made with html, css and javascript! features: login (password is 1234) notebook (markdown and code accepted) gallery (upload pictures) calculator spotify player calendar terminal to-do list system monitor search bar quick links time and weather tracker (easter egg found here) challenges: ZERO time to work bugs bugs bugs previous versions: elenaOS (june 2026) kpopOS (august 2026) enjoy!...
|
1793713941.1542614
|
1793800341.1542614
|
|
66217
|
My awesome macropad! by @ImminentOrigin_23 | Stard My awesome macropad! by @ImminentOrigin_23 | Stardance...
|
ImminentOrigin_23
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @ImminentOrigin_23 Title: My awesome macropad! by @ImminentOrigin_23 | Stardance...
|
1793713942.4009528
|
1794318742.4009528
|
|
67071
|
hello world by @rgb-hsl | Stardance
|
rgb-hsl
|
1
|
11.0
|
25
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-26T15:36:29Z", "hours": 11.0, "multiplier": 2.36, "payout": 25, "blessing": "neutral", "text": "Hello World is a metafiction text game written in Python that functions as a Python tutorial, while the program tries its best to simultaneously demotivate the user (lol). But who knows, maybe there’s a reason for that… I tried my best to make use of the critique I received on my previous python project by introducing better error handling and using ANSI color codes to make it more interesting. I learnt new things while working on it, such as the color codes, and try and except functions, so I’m quite happy with it. But I did procrastinate like crazy and had a lot of issues after my GitHub codespaces ran out… but I’m done now, somehow. It’s playable on pyterm without install! If you give it a try I hope you enjoy playing!", "repo": "https://github.com/rgbhsl/helloworld", "demo": "https://pyterm.hackclub.com/rgbhsl/helloworld"}]...
|
[{"post_id": 83010, "ts": "202 [{"post_id": 83010, "ts": "2026-10-26T15:30:22Z", "hours": 1.7794, "text": "It’s FINALLLYYYYYY done!!!!!!! Had to do a lot of bug fixes, and work in 3 different IDEs, but here it is, finally. My second Python project!"}, {"post_id": 82092, "ts": "2026-10-23T20:41:15Z", "hours": 1.5519, "text": "I’ve barely worked on this in AGEEEESSSSS. i gotta lock in and speedrun this thing. Added some try and except features as well, learning more about errors."}, {"post_id": 78061, "ts": "2026-10-09T12:38:07Z", "hours": 2.3247, "text": "Lately I’ve been working a bit slower than I would like to, but I made a fair amount of progress today. What the program structure looks like right now:"}, {"post_id": 76807, "ts": "2026-10-04T17:09:15Z", "hours": 3.2694, "text": "Devlog 2 Haven’t posted a devlog in some time! The game is progressing quite well. I’ve learnt several new things while working on it lately, such as: ANSI escape codes to change the text color. Big game changer (no pun intended). Made short functions in order to save myself time writing longer commands over and over to leave lines or wait for a short time learning Try and Except these days! as well as the history of Python (it’ll be relevant…) Eventually: I want it to have at least 3 endings, and maybe even achievements. I want to increase interactivity As for the storyline, I’m working on that as I go along. Any recommendations or advice appreciated!"}, {"post_id": 75662, "ts": "2026-09-30T17:37:03Z", "hours": 1.8475, "text": "I really enjoyed making my previous Python project, much more than the ones I’ve been making with HTML, so I decided to make another! I will be paying close attention to some of the critique i got on my previous Python project and adding more features, improved error handling etc. and improving my README and devlogs. I want to learn new skills with this project as well!!!"}]...
|
Title: hello world by @rgb-hsl | Stardance
Devlog Title: hello world by @rgb-hsl | Stardance
Devlogs:
I really enjoyed making my previous Python project, much more than the ones I’ve been making with HTML, so I decided to make another! I will be paying close attention to some of the critique i got on my previous Python project and adding more features, improved error handling etc. and improving my README and devlogs. I want to learn new skills with this project as well!!!
Devlog 2 Haven’t posted a devlog in some time! The game is progressing quite well. I’ve learnt several new things while working on it lately, such as: ANSI escape codes to change the text color. Big game changer (no pun intended). Made short functions in order to save myself time writing longer commands over and over to leave lines or wait for a short time learning Try and Except these days! as well as the history of Python (it’ll be relevant…) Eventually: I want it to have at least 3 endings, and maybe even achievements. I want to increase interactivity As for the storyline, I’m working on that as I go along. Any recommendations or advice appreciated!
Lately I’ve been working a bit slower than I would like to, but I made a fair amount of progress today. What the program structure looks like right now:
I’ve barely worked on this in AGEEEESSSSS. i gotta lock in and speedrun this thing. Added some try and except features as well, learning more about errors.
It’s FINALLLYYYYYY done!!!!!!! Had to do a lot of bug fixes, and work in 3 different IDEs, but here it is, finally. My second Python project!
Ships:
Hello World is a metafiction text game written in Python that functions as a Python tutorial, while the program tries its best to simultaneously demotivate the user (lol). But who knows, maybe there’s a reason for that… I tried my best to make use of the critique I received on my previous python project by introducing better error handling and using ANSI color codes to make it more interesting. I learnt new things while working on it, such as the color codes, and try and except functions, so I’m quite happy with it. But I did procrastinate like crazy and had a lot of issues after my GitHub codespaces ran out… but I’m done now, somehow. It’s playable on pyterm without install! If you give it a try I hope you enjoy playing!...
|
1793713943.619419
|
1793800343.619419
|
|
66218
|
aquaflux by @M7xind | Stardance
|
M7xind
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: aquaflux by @M7xind | Stardance
|
1793713946.0514755
|
1794318746.0514755
|
|
50199
|
Aarav Builds by @Aaravkatiyar | Stardance
|
Aaravkatiyar
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-17T10:11:01Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built Aarav Builds as a personal student portfolio with a real project log, learning map, notes section, theme preference, reading-size control, and shareable project filters. I used plain HTML, CSS, and JavaScript, deployed it on GitHub Pages, and tested the live site on desktop and mobile. The caching issue during deployment taught me to verify the actual public files after each release.", "repo": "https://github.com/aaravkatiyar55-gif/aarav-builds", "demo": "https://aaravkatiyar55-gif.github.io/aarav-builds/"}]...
|
[{"post_id": 48785, "ts": "202 [{"post_id": 48785, "ts": "2026-08-17T10:05:26Z", "hours": 0.8003, "text": "I started Aarav Builds , a personal site where I can keep track of the real projects and web-development skills I’m working on. I built the page with plain HTML, CSS, and JavaScript instead of a site builder. It has an introduction, a project build log, a learning map, and a short notes section. I added a theme toggle and reading-size preference that both persist after refresh. I also added project-type filters, so visitors can switch between the browser project and Slack bot entries. One issue I found while deploying was browser caching: the new HTML reached GitHub Pages before the matching JavaScript in one fresh check. I fixed it by versioning the CSS and JavaScript URLs, then tested the deployed filter and reading-size controls again. I tested the public site on desktop and at a 360px mobile width, checked that there was no horizontal overflow, and confirmed keyboard navigation starts at the skip link. GitHub repository: https://github.com/aaravkatiyar55-gif/aarav-builds . Live demo: https://aaravkatiyar55-gif.github.io/aarav-builds/"}]...
|
Title: Aarav Builds by @Aaravkatiyar | Stardance
Title: Aarav Builds by @Aaravkatiyar | Stardance
Devlogs:
I started Aarav Builds , a personal site where I can keep track of the real projects and web-development skills I’m working on. I built the page with plain HTML, CSS, and JavaScript instead of a site builder. It has an introduction, a project build log, a learning map, and a short notes section. I added a theme toggle and reading-size preference that both persist after refresh. I also added project-type filters, so visitors can switch between the browser project and Slack bot entries. One issue I found while deploying was browser caching: the new HTML reached GitHub Pages before the matching JavaScript in one fresh check. I fixed it by versioning the CSS and JavaScript URLs, then tested the deployed filter and reading-size controls again. I tested the public site on desktop and at a 360px mobile width, checked that there was no horizontal overflow, and confirmed keyboard navigation starts at the skip link. GitHub repository: https://github.com/aaravkatiyar55-gif/aarav-builds . Live demo: https://aaravkatiyar55-gif.github.io/aarav-builds/
Ships:
I built Aarav Builds as a personal student portfolio with a real project log, learning map, notes section, theme preference, reading-size control, and shareable project filters. I used plain HTML, CSS, and JavaScript, deployed it on GitHub Pages, and tested the live site on desktop and mobile. The caching issue during deployment taught me to verify the actual public files after each release....
|
1793713946.9359899
|
1793800346.9359899
|
|
66219
|
mini blind by @KashanZahid | Stardance
|
KashanZahid
|
0
|
0.28
|
0
|
[]
|
[{"post_id": 74806, "ts": "202 [{"post_id": 74806, "ts": "2026-09-28T09:58:41Z", "hours": 0.2833, "text": "sep,27 s today i did some programing of voice assistant"}]...
|
Title: mini blind by @KashanZahid | Stardance
Dev Title: mini blind by @KashanZahid | Stardance
Devlogs:
sep,27 s today i did some programing of voice assistant...
|
1793713950.4075553
|
1794318750.4075553
|
|
36428
|
My own site! by @heisenberg | Stardance
|
heisenberg
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-26T17:48:44Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built my personal site. It turned out better than I expected. There was nothing particularly challenging, just some CSS stuff that I figured out after a quick search. I would love your feedback on this!", "repo": "https://github.com/xxeisenberg/my-site", "demo": "https://jaideep-site.vercel.app/"}]...
|
[{"post_id": 35339, "ts": "202 [{"post_id": 35339, "ts": "2026-07-26T17:36:02Z", "hours": 3.3394, "text": "Finally made my personal website. The doodles are also made my me :) PS: the ring glow is not intentional, i was just bluring the background. but i like how it looks :P If you want the background: https://moewalls.com/abstract/the-crown-of-thorns-live-wallpaper/"}]...
|
Title: My own site! by @heisenberg | Stardance
De Title: My own site! by @heisenberg | Stardance
Devlogs:
Finally made my personal website. The doodles are also made my me :) PS: the ring glow is not intentional, i was just bluring the background. but i like how it looks :P If you want the background: https://moewalls.com/abstract/the-crown-of-thorns-live-wallpaper/
Ships:
I built my personal site. It turned out better than I expected. There was nothing particularly challenging, just some CSS stuff that I figured out after a quick search. I would love your feedback on this!...
|
1793713951.289221
|
1793800351.289221
|
|
66221
|
My own site! by @johanjimshoo | Stardance
|
johanjimshoo
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My own site! by @johanjimshoo | Stardance
|
1793713952.5074286
|
1794318752.5074286
|
|
4274
|
AI Workshop by @shaurwadhawan | Stardance
|
shaurwadhawan
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-03T01:31:34Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built a somewhat polished Next.js portfolio with Tailwind and Framer Motion, focused on premium motion - with help of gpt 5.0, a strong hero section, and refined project cards. the main challenge imo was cleaning up the repo so GitHub would accept it (removing build artifacts like node_modules/.next and fixing a JSX issue in Hero.js), and the key point is that the app is ready to deploy publicly, it just needs a Vercel/Netlify deployment for a shareable live URL.", "repo": "https://github.com/shaurwadhawan/AI-workshop", "demo": "https://ai-workshop-rho-rouge.vercel.app/"}]...
|
[{"post_id": 739, "ts": "2026- [{"post_id": 739, "ts": "2026-06-02T11:17:55Z", "hours": 1.1308, "text": "Working on developing a site using next.js for my personal profile and advertising. Experimenting with custom scroll animations and cool ui/ux effects"}]...
|
Title: AI Workshop by @shaurwadhawan | Stardance
Title: AI Workshop by @shaurwadhawan | Stardance
Devlogs:
Working on developing a site using next.js for my personal profile and advertising. Experimenting with custom scroll animations and cool ui/ux effects
Ships:
I built a somewhat polished Next.js portfolio with Tailwind and Framer Motion, focused on premium motion - with help of gpt 5.0, a strong hero section, and refined project cards. the main challenge imo was cleaning up the repo so GitHub would accept it (removing build artifacts like node_modules/.next and fixing a JSX issue in Hero.js), and the key point is that the app is ready to deploy publicly, it just needs a Vercel/Netlify deployment for a shareable live URL....
|
1793713953.3736866
|
1793800353.3736866
|
|
66222
|
Website by @s02828293 | Stardance
|
s02828293
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Website by @s02828293 | Stardance
|
1793713954.466782
|
1794318754.466782
|
|
8398
|
centaur by @chiron_dev8 | Stardance
|
chiron_dev8
|
2
|
19.0
|
152
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-31T22:05:56Z", "hours": 15.0, "multiplier": 8.31, "payout": 124, "blessing": "neutral", "text": "Intro This is my second ship for centaur , my own source-based package manager. It can install, uninstall, manage dependencies, update, sync and clean packages. Please read the changelog below for all the awesome changes i’ve made! Attention reviewers Hi, thank you for taking the time to review my code, it means a lot. This package manager is only meant for linux operating systems which means that THIS WILL NOT WORK ON WINDOWS. If you do not want to set up a linux virtual environment to test this, please skip this project. I had a couple people complain that it couldn’t run on Windows and rated my project really poorly which isn’t very fair on me. Since this project deals with system tools it can potentially corrupt packages that are already installed on your system. Please consider using a virtual environment to test this. If you do not want to set up a linux virtual environment, and you are already running linux, please condider only installing writedoc using sudo centaur install writedoc as this is a package that I made myself so won’t corrupt anything you already have on your system. Changelog Quite a lot has happened since my last ship and I have taken onboard a lot of feedback from my reviewers (thank you!): Tarballs now do not manually have to be downloaded in the install section of the package script and all the necessary data such as the source link and sha256 checksum are included in the metadata. Tarballs are automatically checked for validity by comparing it’s known official checksum and the checksum of the downloaded file. Instead of blindly running commands directly on the host system, the commands are instead run through a secure sandbox environment using bubblewrap . This allows commands on the host computer to be used to configure and compile packages but files and directories that are not needed are read-only and cannot be modified by the packages. For example, to install htop , the make and bash commands can still be run but files and directories not related to the installation of it are read-only and cannot be modified or deleted. When a package tried to add new files to the host system, the sandbox intercepts them and adds it to a staging directory instead which can then be used for different purposes after installation. After installation is finished, the new files are then copied to the host system. A manifest file is now used to track what files were added to the host system when the package was installed. The staging directory is scanned and the files that are new are added to the manifest. When a user wants to uninstall a package, all the files that are referenced in the manifest are deleted. This means that the package script creators no longer need to make a separate uninstall block. A couple new packages have been added such as htop , tmux and libevent . There are loads more changes that are slightly less interesting but have improved the performance and readability of the code :)", "repo": "https://github.com/Chiron8/centaur", "demo": "https://github.com/Chiron8/centaur/wiki/2.-Install"}, {"ship_num": 2, "ts": "2026-07-05T17:05:56Z", "hours": 4.0, "multiplier": 6.73, "payout": 28, "blessing": "neutral", "text": "I have worked on the project for a while before Stardance started. Probably around 95% of my hours are unlogged. I have made a package manager for UNIX based systems (specifically for my custom Linux based operating system, ChironOS). It can install, uninstall and update packages, manage dependencies, sync install files to the latest versions and automatically remove all unused packages. My favourite part of the project was finally seeing all the functions working together. I will still be working on this for a long long time as there is a lot I can improve on. My next goal will be to make package scripts for the whole of Linux From Scratch and Beyond LFS as this will prove the reliability of my package manager. If you want to test this please make sure you are using Linux (It will probably work on BSD but I haven’t tested it. It probably won’t work on mac and it DEFINITELY WILL NOT WORK ON WINDOWS). Make sure to read the wiki for installation and usage instructions. peace", "repo": "https://github.com/Chiron8/centaur", "demo": "https://github.com/Chiron8/centaur/wiki/2.-Install"}]...
|
[{"post_id": 85910, "ts": "202 [{"post_id": 85910, "ts": "2026-10-31T21:33:10Z", "hours": 1.3656, "text": "Just made a couple more bug fixes with the sandbox environment and staging directory management ahead of my final ship for stardance :). I also added tmux and its dependency, libevent."}, {"post_id": 85467, "ts": "2026-10-31T11:32:44Z", "hours": 0.9786, "text": "Quick devlog to mention that I updated how the bubblewrap environment works to include extra directories including /var and that I swapped out overlayfs to just binding directories as it makes it easier and more reliable :)"}, {"post_id": 82609, "ts": "2026-10-25T12:29:51Z", "hours": 13.1214, "text": "During the last three months, I significantly improved Centaur’s package-management infrastructure. I streamlined package source handling by adding automatic tarball downloads, extraction, and checksum verification. I also redesigned installation around a bubblewrap sandbox, staging directories, and manifests, which replaces the insecure system() function and makes package installation and remova safer. Alongside these changes, I improved uninstall usability, added x86-64 binaries, maintained the beta release workflow, and shipped versions 1.1.1 through 1.3.1."}, {"post_id": 22953, "ts": "2026-07-05T16:59:24Z", "hours": 3.9061, "text": "Centaur v1.1 Release Notes In this release, I focused on improving the .centaur package format and fixing several usability issues from v1.0. What I changed 1. I redesigned the .centaur syntax into 3 clear sections I changed .centaur files so package data is now split into: [meta] [install] [uninstall] This replaces the old mixed format where metadata, install steps, and uninstall script generation were all blended together. 2. I made metadata explicit and easier to parse In v1.0, package metadata and dependency handling relied on ad-hoc placement (for example, dependency lines and markers like === ADD DEPENDENCIES ABOVE THIS LINE === ). In v1.1, I moved this into a structured metadata block, for example: name = \"writedoc\" version = \"2.3-p1\" dependencies = \"example\" This makes package definitions cleaner and far more consistent. 3. I separated install and uninstall logic I moved installation commands into [install] and uninstall commands into [uninstall] . Previously, uninstall behavior was created indirectly during install by writing uninstall commands into another file. Now I define uninstall behavior directly in the package script itself, which is simpler and easier to maintain. 4. I fixed parser/runtime snags from v1.0 I resolved several pain points in .centaur files, including: line length limit issues newline/formatting sensitivity (such as needing blank lines between commands) general script parsing/execution reliability issues Result With v1.1, I made .centaur scripts more structured, more readable, and more reliable. The new format is easier for me (and others) to write, maintain, and parse going forward."}, {"post_id": 2848, "ts": "2026-06-05T18:08:43Z", "hours": 0.2842, "text": "I’m currently working on improving how I go about parsing package metadata. Previously, package dependencies were declared at the top of the file, however this soon limited adding extra metadata such as “preservation” type which I will implement later. I will now be using [meta] tags with variables inside them to allow for more advanced configuration!"}]...
|
Title: centaur by @chiron_dev8 | Stardance
Devlog Title: centaur by @chiron_dev8 | Stardance
Devlogs:
I’m currently working on improving how I go about parsing package metadata. Previously, package dependencies were declared at the top of the file, however this soon limited adding extra metadata such as “preservation” type which I will implement later. I will now be using [meta] tags with variables inside them to allow for more advanced configuration!
Centaur v1.1 Release Notes In this release, I focused on improving the .centaur package format and fixing several usability issues from v1.0. What I changed 1. I redesigned the .centaur syntax into 3 clear sections I changed .centaur files so package data is now split into: [meta] [install] [uninstall] This replaces the old mixed format where metadata, install steps, and uninstall script generation were all blended together. 2. I made metadata explicit and easier to parse In v1.0, package metadata and dependency handling relied on ad-hoc placement (for example, dependency lines and markers like === ADD DEPENDENCIES ABOVE THIS LINE === ). In v1.1, I moved this into a structured metadata block, for example: name = "writedoc" version = "2.3-p1" dependencies = "example" This makes package definitions cleaner and far more consistent. 3. I separated install and uninstall logic I moved installation commands into [install] and uninstall commands into [uninstall] . Previously, uninstall behavior was created indirectly during install by writing uninstall commands into another file. Now I define uninstall behavior directly in the package script itself, which is simpler and easier to maintain. 4. I fixed parser/runtime snags from v1.0 I resolved several pain points in .centaur files, including: line length limit issues newline/formatting sensitivity (such as needing blank lines between commands) general script parsing/execution reliability issues Result With v1.1, I made .centaur scripts more structured, more readable, and more reliable. The new format is easier for me (and others) to write, maintain, and parse going forward.
During the last three months, I significantly improved Centaur’s package-management infrastructure. I streamlined package source handling by adding automatic tarball downloads, extraction, and checksum verification. I also redesigned installation around a bubblewrap sandbox, staging directories, and manifests, which replaces the insecure system() function and makes package installation and remova safer. Alongside these changes, I improved uninstall usability, added x86-64 binaries, maintained the beta release workflow, and shipped versions 1.1.1 through 1.3.1.
Quick devlog to mention that I updated how the bubblewrap environment works to include extra directories including /var and that I swapped out overlayfs to just binding directories as it makes it easier and more reliable :)
Just made a couple more bug fixes with the sandbox environment and staging directory management ahead of my final ship for stardance :). I also added tmux and its dependency, libevent.
Ships:
I have worked on the project for a while before Stardance started. Probably around 95% of my hours are unlogged. I have made a package manager for UNIX based systems (specifically for my custom Linux based operating system, ChironOS). It can install, uninstall and update packages, manage dependencies, sync install files to the latest versions and automatically remove all unused packages. My favourite part of the project was finally seeing all the functions working together. I will still be working on this for a long long time as there is a lot I can improve on. My next goal will be to make package scripts for the whole of Linux From Scratch and Beyond LFS as this will prove the reliability of my package manager. If you want to test this please make sure you are using Linux (It will probably work on BSD but I haven’t tested it. It probably won’t work on mac and it DEFINITELY WILL NOT WORK ON WINDOWS). Make sure to read the wiki for installation and usage instructions. peace
Intro This is my second ship for centaur , my own source-based package manager. It can install, uninstall, manage dependencies, update, sync and clean packages. Please read the changelog below for all the awesome changes i’ve made! Attention reviewers Hi, thank you for taking the time to review my code, it means a lot. This package manager is only meant for linux operating systems which means that THIS WILL NOT WORK ON WINDOWS. If you do not want to set up a linux virtual environment to test this, please skip this project. I had a couple people complain that it couldn’t run on Windows and rated my project really poorly which isn’t very fair on me. Since this project deals with system tools it can potentially corrupt packages that are already installed on your system. Please consider using a virtual environment to test this. If you do not want to set up a linux virtual environment, and you are already running linux, please condider only installing writedoc using sudo centaur install writedoc as this is a package that I made myself so won’t corrupt anything you already have on your system. Changelog Quite a lot has happened since my last ship and I have taken onboard a lot of feedback from my reviewers (thank you!): Tarballs now do not manually have to be downloaded in the install section of the package script and all the necessary data such as the source link and sha256 checksum are included in the metadata. Tarballs are automatically checked for validity by comparing it’s known official checksum and the checksum of the downloaded file. Instead of blindly running commands directly on the host system, the commands are instead run through a secure sandbox environment using bubblewrap . This allows commands on the host computer to be used to configure and compile packages but files and directories that are not needed are read-only and cannot be modified by the packages. For example, to install htop , the make and bash commands can still be run but files and directories not related to the installation of it are read-only and cannot be modified or deleted. When a package tried to add new files to the host system, the sandbox intercepts them and adds it to a staging directory instead which can then be used for different purposes after installation. After installation is finished, the new files are then copied to the host system. A manifest file is now used to track what files were added to the host system when the package was installed. The staging directory is scanned and the files that are new are added to the manifest. When a user wants to uninstall a package, all the files that are referenced in the manifest are deleted. This means that the package script creators no longer need to make a separate uninstall block. A couple new packages have been added such as htop , tmux and libevent . There are loads more changes that are slightly less interesting but have improved the performance and readability of the code :)...
|
1793713955.3323817
|
1793800355.3323817
|
|
29987
|
CashDive by @Thomas | Stardance
|
Thomas
|
1
|
51.0
|
315
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-31T00:42:58Z", "hours": 51.0, "multiplier": 6.11, "payout": 315, "blessing": "neutral", "text": "I made CashDive, a web-based personal finance app that accesses banking data through TrueLayer, an open banking data provider. It is self-hosted using a docker container, which means that it can be run easily on most computers, everywhere, such as a home server like a raspberry pi or PC. I learnt a lot when making this! Such as improving my web skills from basic HTML/CSS/TS to using NextJS and React. I also learnt about managing data, as the data is cached in a database to prevent excessive requests. This also allowed me to build in my own features, such as adding custom notes to transactions and more in the future. It is worth noting that it is not ready for real banking data yet, as the project is still in early development. The data that you see in the demo is from a mock bank account. One thing I found difficult was authentication with the TrueLayer API, as it is more complicated than I was used to and it took a bit of work to figure it out.", "repo": "https://github.com/thjaed/cashdive", "demo": "https://cashdive-demo.thlab.dev"}]...
|
[{"post_id": 85241, "ts": "202 [{"post_id": 85241, "ts": "2026-10-31T00:31:48Z", "hours": 4.8222, "text": "Final devlog: Green terminal theme, Docker, and a public demo So I kinda forgot to devlog in between these things, so first: I made the site look way cooler with a green/black hacker terminal asthetic! I also used more JetBrains Mono and added some slight animation. You can now deploy CashDive in a docker container! this means that it is easy for people to run this at home on any dedicated computer, like a raspberry pi or PC. I am running the docker container on my own server and made it publically available here: https://cashdive-demo.thlab.dev/ I also updated the github readme with some instructions ready to ship."}, {"post_id": 83839, "ts": "2026-10-28T18:20:40Z", "hours": 3.3306, "text": "Implemented transaction notes feature In the last devlog I made a box for adding notes to a transaction. Now I created a backend for it & frontend logic to make it work! I added some more API endpoints, to get a note and set/update a note, and a transactions summary endpoint which is like the transactions endpoint but doesn’t give the unused information and says whether a transaction has a note or not (not the note itself). This allows the list of transactions to show a note icon on the transactions in the list. you can then click on them to view/edit the note."}, {"post_id": 83104, "ts": "2026-10-26T21:52:02Z", "hours": 1.8825, "text": "Transaction detail popup I added a popup for transaction details, it had a space to add notes (I haven’t built the backend for this yet, so it is purely decorative) but I think it looks pretty good!"}, {"post_id": 82689, "ts": "2026-10-25T16:29:24Z", "hours": 4.9031, "text": "Significant UI improvements This devlog was basically just me messing about with tailwind classes until it looked good. i took some inspiration from the Hack Club Bank transactions page as well, which was helpful as a reference. New features include: JetBrains Mono & Inter font Date formatting Transaction description and account name formatting (no more full upper case) Table layout for transactions Account balance shown on home page (this needed a new API endpoint) Mobile UI styling Pending transaction badge Skeleton loader for transaction page"}, {"post_id": 82347, "ts": "2026-10-24T16:41:37Z", "hours": 2.9608, "text": "Added currency formatting and loading screens for home page So I made a function that turns the currency value into a formatted string, and shows a ‘+’ on income in the transaction list and no sign on expenditure. Then I made a loading wheel for the home page - you don’t really see this because it is only shown when it is checking if you are authenticated with your bank. I improved the design for the ‘not connected’ screen, and I stole the design for the link from one of my other projects because it looks pretty cool. And finally I made a skeleton loader for the accounts page, which is shown while the accounts are loading. The areas where the data would be are replaced by pulsing grey boxes, which is a modern approach to showing loading data. Overall I think these changes made the site look more professional!"}, {"post_id": 82013, "ts": "2026-10-23T13:35:59Z", "hours": 4.9836, "text": "Added pagintation to account page I split the long transaction list into pages, with controls at the bottom for navigation and a dropdown for the page size. I had to learn about useEffect() and useState() and other react stuff, since this is the first time I have done react/nextjs specific programming, rather than just essentially writing TypeScript and HTML. I tweaked the API to have a page and page_size parameter, which gets sent in the SQL query to the database, to just return the transactions needed. I also made the tsx page fully client side, so I had to remove the async functionality and add the frontend origin (localhost:3000) to the CORS middleware allowed origins in the FastAPI backend. One problem is that the entire transaction history is updated freqently, rather than just recent ones, so I need to figure out how to solve this problem without leaving stale pending transactions around."}, {"post_id": 80807, "ts": "2026-10-18T20:48:30Z", "hours": 4.4756, "text": "Web UI & Account page Added account page for viewing transactions I added a page for specific accounts so you can see the transactions and balance. Added styling to site I added some styling to the main page and the new account page This devlog took a while because I was focussing on other projects, but im gonna finish this project now. Also the styling took a while to get right and nextjs/react is hard Anyway next I am going to split up the transactions into pages, so it doesn’t take ages to load and result in a massive page"}, {"post_id": 49663, "ts": "2026-08-18T15:28:00Z", "hours": 4.7322, "text": "I was gone for a while, but now I started working on a frontend website for the project! I am using next.js and it uses the API I created for data. It automatically checks the authentication status and then prompts you to login with your bank if required, then it redirects to the home page. Next I will add more functionality to the site and add proper styling."}, {"post_id": 36399, "ts": "2026-07-28T14:08:07Z", "hours": 2.7244, "text": "I made an API for cashdive! I made an authentication flow with TrueLayer, so there is no need for manual auth code input. All the basic info is available from my API, including accounts, balances, and transactions."}, {"post_id": 34320, "ts": "2026-07-24T22:29:16Z", "hours": 2.0233, "text": "The database is now used to cache the data, so the API is not reached every time. The default expiry is 3 minutes, so new data will be fetched from the API after that."}, {"post_id": 33557, "ts": "2026-07-23T16:20:57Z", "hours": 5.3361, "text": "I made several improvements to the database, it now stores all the data including accounts, balances, and transactions, and pending transactions are shown & updated. When data is fetched from the API, the database is automatically updated. Authentication is improved by automatically refreshing the token after its expiry time. I made a lot of progress this devlog but it’s all backend stuff, so there’s not much to show, but here are the new tables in the DB:"}, {"post_id": 27237, "ts": "2026-07-12T16:58:05Z", "hours": 3.5094, "text": "I added a PostgreSQL database! The code I wrote can create a transactions table, add transactions from the API to the table, and fetch them from the database again."}, {"post_id": 21727, "ts": "2026-07-03T20:20:33Z", "hours": 3.2906, "text": "I made a lot of behind-the-scenes changes, including separating the API, auth, and interface into different files, adding token renewal support (so you only need to log in once every 90 days) and added some dataclasses so the data from the API is in a standard form across the whole app. The video shows that if the API token is not valid, it can generate a new one with the refresh token."}, {"post_id": 21478, "ts": "2026-07-03T13:28:53Z", "hours": 2.4814, "text": "I made a basic terminal interface for viewing bank account information, using the TrueLayer API. I used their mock bank account credentials to test my program!"}]...
|
Title: CashDive by @Thomas | Stardance
Devlogs:
I Title: CashDive by @Thomas | Stardance
Devlogs:
I made a basic terminal interface for viewing bank account information, using the TrueLayer API. I used their mock bank account credentials to test my program!
I made a lot of behind-the-scenes changes, including separating the API, auth, and interface into different files, adding token renewal support (so you only need to log in once every 90 days) and added some dataclasses so the data from the API is in a standard form across the whole app. The video shows that if the API token is not valid, it can generate a new one with the refresh token.
I added a PostgreSQL database! The code I wrote can create a transactions table, add transactions from the API to the table, and fetch them from the database again.
I made several improvements to the database, it now stores all the data including accounts, balances, and transactions, and pending transactions are shown & updated. When data is fetched from the API, the database is automatically updated. Authentication is improved by automatically refreshing the token after its expiry time. I made a lot of progress this devlog but it’s all backend stuff, so there’s not much to show, but here are the new tables in the DB:
The database is now used to cache the data, so the API is not reached every time. The default expiry is 3 minutes, so new data will be fetched from the API after that.
I made an API for cashdive! I made an authentication flow with TrueLayer, so there is no need for manual auth code input. All the basic info is available from my API, including accounts, balances, and transactions.
I was gone for a while, but now I started working on a frontend website for the project! I am using next.js and it uses the API I created for data. It automatically checks the authentication status and then prompts you to login with your bank if required, then it redirects to the home page. Next I will add more functionality to the site and add proper styling.
Web UI & Account page Added account page for viewing transactions I added a page for specific accounts so you can see the transactions and balance. Added styling to site I added some styling to the main page and the new account page This devlog took a while because I was focussing on other projects, but im gonna finish this project now. Also the styling took a while to get right and nextjs/react is hard Anyway next I am going to split up the transactions into pages, so it doesn’t take ages to load and result in a massive page
Added pagintation to account page I split the long transaction list into pages, with controls at the bottom for navigation and a dropdown for the page size. I had to learn about useEffect() and useState() and other react stuff, since this is the first time I have done react/nextjs specific programming, rather than just essentially writing TypeScript and HTML. I tweaked the API to have a page and page_size parameter, which gets sent in the SQL query to the database, to just return the transactions needed. I also made the tsx page fully client side, so I had to remove the async functionality and add the frontend origin (localhost:3000) to the CORS middleware allowed origins in the FastAPI backend. One problem is that the entire transaction history is updated freqently, rather than just recent ones, so I need to figure out how to solve this problem without leaving stale pending transactions around.
Added currency formatting and loading screens for home page So I made a function that turns the currency value into a formatted string, and shows a ‘+’ on income in the transaction list and no sign on expenditure. Then I made a loading wheel for the home page - you don’t really see this because it is only shown when it is checking if you are authenticated with your bank. I improved the design for the ‘not connected’ screen, and I stole the design for the link from one of my other projects because it looks pretty cool. And finally I made a skeleton loader for the accounts page, which is shown while the accounts are loading. The areas where the data would be are replaced by pulsing grey boxes, which is a modern approach to showing loading data. Overall I think these changes made the site look more professional!
Significant UI improvements This devlog was basically just me messing about with tailwind classes until it looked good. i took some inspiration from the Hack Club Bank transactions page as well, which was helpful as a reference. New features include: JetBrains Mono & Inter font Date formatting Transaction description and account name formatting (no more full upper case) Table layout for transactions Account balance shown on home page (this needed a new API endpoint) Mobile UI styling Pending transaction badge Skeleton loader for transaction page
Transaction detail popup I added a popup for transaction details, it had a space to add notes (I haven’t built the backend for this yet, so it is purely decorative) but I think it looks pretty good!
Implemented transaction notes feature In the last devlog I made a box for adding notes to a transaction. Now I created a backend for it & frontend logic to make it work! I added some more API endpoints, to get a note and set/update a note, and a transactions summary endpoint which is like the transactions endpoint but doesn’t give the unused information and says whether a transaction has a note or not (not the note itself). This allows the list of transactions to show a note icon on the transactions in the list. you can then click on them to view/edit the note.
Final devlog: Green terminal theme, Docker, and a public demo So I kinda forgot to devlog in between these things, so first: I made the site look way cooler with a green/black hacker terminal asthetic! I also used more JetBrains Mono and added some slight animation. You can now deploy CashDive in a docker container! this means that it is easy for people to run this at home on any dedicated computer, like a raspberry pi or PC. I am running the docker container on my own server and made it publically available here: https://cashdive-demo.thlab.dev/ I also updated the github readme with some instructions ready to ship.
Ships:
I made CashDive, a web-based personal finance app that accesses banking data through TrueLayer, an open banking data provider. It is self-hosted using a docker container, which means that it can be run easily on most computers, everywhere, such as a home server like a raspberry pi or PC. I learnt a lot when making this! Such as improving my web skills from basic HTML/CSS/TS to using NextJS and React. I also learnt about managing data, as the data is cached in a database to prevent excessive requests. This also allowed me to build in my own features, such as adding custom notes to transactions and more in the future. It is worth noting that it is not ready for real banking data yet, as the project is still in early development. The data that you see in the demo is from a mock bank account. One thing I found difficult was authentication with the TrueLayer API, as it is more complicated than I was used to and it took a bit of work to figure it out....
|
1793713956.5076504
|
1793800356.5076504
|
|
66223
|
SHUKI'S WEDOS by @Shuki | Stardance
|
Shuki
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: SHUKI'S WEDOS by @Shuki | Stardance
|
1793713957.6910717
|
1794318757.6910717
|
|
2556
|
My awesome macropad! by @bengordon | Stardance
|
bengordon
|
1
|
1.0
|
4
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-09T13:15:55Z", "hours": 1.0, "multiplier": 5.0, "payout": 4, "blessing": "neutral", "text": "I built a macropad. This was my first project so I followed the tutorial. Figuring out PCB editor was challenging.", "repo": "https://github.com/bengordon7777-del/HackPad", "demo": ""}]...
|
[{"post_id": 2158, "ts": "2026 [{"post_id": 2158, "ts": "2026-06-04T14:30:24Z", "hours": 0.8933, "text": "I built a macropad. This is my first PCB so I followed the guide but formatted and chose the keys to be in a wasd format ."}]...
|
Title: My awesome macropad! by @bengordon | Starda Title: My awesome macropad! by @bengordon | Stardance
Devlogs:
I built a macropad. This is my first PCB so I followed the guide but formatted and chose the keys to be in a wasd format .
Ships:
I built a macropad. This was my first project so I followed the tutorial. Figuring out PCB editor was challenging....
|
1793713958.572174
|
1793800358.572174
|
|
66224
|
SHUKI'S WEDOS by @Shuki | Stardance
|
Shuki
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: SHUKI'S WEDOS by @Shuki | Stardance
|
1793713960.661495
|
1794318760.661495
|
|
71420
|
Glitch Run game by @ee25b022 | Stardance
|
ee25b022
|
1
|
13.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-30T14:36:36Z", "hours": 13.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is was indeed very challenging, as this is my first time making a game.", "repo": "https://github.com/sai-bhaskar-81/Flappy-Bird", "demo": "https://sai-bhaskar-81.github.io/Flappy-Bird/Glitch%20Run%20and%20Face%20ID/Glitch_Run/"}]...
|
[{"post_id": 84696, "ts": "202 [{"post_id": 84696, "ts": "2026-10-30T03:13:13Z", "hours": 0.6867, "text": "Glitch Run III"}, {"post_id": 83707, "ts": "2026-10-28T12:58:13Z", "hours": 8.59, "text": "Chaala ayipoyindhi"}, {"post_id": 82911, "ts": "2026-10-26T06:18:38Z", "hours": 0.3222, "text": "Smth, jsut debugging"}, {"post_id": 82868, "ts": "2026-10-26T03:37:32Z", "hours": 3.4125, "text": "A neon futuristic game where you have to shoot and escape in a confined space"}]...
|
Title: Glitch Run game by @ee25b022 | Stardance
D Title: Glitch Run game by @ee25b022 | Stardance
Devlogs:
A neon futuristic game where you have to shoot and escape in a confined space
Smth, jsut debugging
Chaala ayipoyindhi
Glitch Run III
Ships:
This is was indeed very challenging, as this is my first time making a game....
|
1793713961.9955628
|
1793800361.9955628
|
|
66225
|
SHUKI'S WEDOS by @Shuki | Stardance
|
Shuki
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: SHUKI'S WEDOS by @Shuki | Stardance
|
1793713963.3310792
|
1794318763.3310792
|
|
32337
|
My Desmos Replica by @SaanviK | Stardance
|
SaanviK
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-16T02:33:19Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a calculator that can help you graph a rational function as well as do basic arithmetic operations", "repo": "https://github.com/OceanSunrise4ever/Mini-Calculator", "demo": "https://example.com"}]...
|
[{"post_id": 29269, "ts": "202 [{"post_id": 29269, "ts": "2026-07-16T02:32:07Z", "hours": 0.4347, "text": "A desmos replica!!"}, {"post_id": 24503, "ts": "2026-07-08T02:59:10Z", "hours": 0.5114, "text": "A calculator that can help you graph rational functions!"}]...
|
Title: My Desmos Replica by @SaanviK | Stardance
Title: My Desmos Replica by @SaanviK | Stardance
Devlogs:
A calculator that can help you graph rational functions!
A desmos replica!!
Ships:
I made a calculator that can help you graph a rational function as well as do basic arithmetic operations...
|
1793713964.191744
|
1793800364.191744
|
|
66226
|
The Smoother Path by @KashikaSonone | Stardance
|
KashikaSonone
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: The Smoother Path by @KashikaSonone | Stard Title: The Smoother Path by @KashikaSonone | Stardance...
|
1793713965.7124076
|
1794318765.7124076
|
|
66227
|
NeuroX by @OPvickerG | Stardance
|
OPvickerG
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: NeuroX by @OPvickerG | Stardance
|
1793713967.4382937
|
1794318767.4382937
|
|
32601
|
DailyAPOD by @to_aarav_g | Stardance
|
to_aarav_g
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-08T14:37:41Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "A simple website with The astromoy photo of the day!", "repo": "https://github.com/Theuser1211/DailyAPOD", "demo": "https://theuser1211.github.io/DailyAPOD/"}]...
|
[{"post_id": 24732, "ts": "202 [{"post_id": 24732, "ts": "2026-07-08T14:36:33Z", "hours": 0.5264, "text": "I built this project using my AI (Actual Intelligence) and a really well-written Stardance guide. It was my first time working with the NASA APOD API, and I learned a lot about fetch(), Vite, and environment variables. I also ran into a GitHub Pages issue that took some debugging before I finally got everything working. The CSS was surprisingly fun too, especially experimenting with clip-path and Google Fonts. Overall, this was a simple project that taught me a lot more than I expected."}]...
|
Title: DailyAPOD by @to_aarav_g | Stardance
Devlo Title: DailyAPOD by @to_aarav_g | Stardance
Devlogs:
I built this project using my AI (Actual Intelligence) and a really well-written Stardance guide. It was my first time working with the NASA APOD API, and I learned a lot about fetch(), Vite, and environment variables. I also ran into a GitHub Pages issue that took some debugging before I finally got everything working. The CSS was surprisingly fun too, especially experimenting with clip-path and Google Fonts. Overall, this was a simple project that taught me a lot more than I expected.
Ships:
A simple website with The astromoy photo of the day!...
|
1793713968.3831913
|
1793800368.3831913
|
|
44590
|
School Tools by @afonso | Stardance
|
afonso
|
4
|
58.0
|
472
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-14T15:31:07Z", "hours": 11.0, "multiplier": 12.51, "payout": 66, "blessing": "neutral", "text": "This update added a new admin dashboard, with it’s endpoints rewritten to be more reliable. It also adds support for password reset, statistics (for admins) and a lot of bug fixes here-and-there.", "repo": "https://github.com/afonsoingles/school-tools", "demo": "https://school-tools.afonsoingles.dev"}, {"ship_num": 2, "ts": "2026-09-07T00:04:15Z", "hours": 1.0, "multiplier": 17.56, "payout": 10, "blessing": "neutral", "text": "This update fixed some bugs in School Tools, and switched the frontend to use bun instead of npm!", "repo": "https://github.com/afonsoingles/school-tools", "demo": "https://school-tools.afonsoingles.dev"}, {"ship_num": 3, "ts": "2026-09-06T01:22:44Z", "hours": 12.0, "multiplier": 13.93, "payout": 168, "blessing": "neutral", "text": "This update majorly adds homework support. You can now create and view your homework! If you let it be overdue, it will also show you. Some other updates include adding icons to subjects and some basic account settings. Making this was fun, and i found really interesting figuring out how to add fields to existing users in prod (since mongodb doesn’t have migrations)", "repo": "https://github.com/afonsoingles/school-tools", "demo": "https://school-tools.afonsoingles.dev"}, {"ship_num": 4, "ts": "2026-08-31T21:17:06Z", "hours": 34.0, "multiplier": 6.7, "payout": 228, "blessing": "neutral", "text": "School Tools is management platform for your study life. You can add your subjects, classes and evaluations. Building this project was so much fun, and I’m really proud of it. I found really challenging creating the ICS feeds and keeping them updated in a reliable way, but that was also fun to learn about.", "repo": "https://github.com/afonsoingles/school-tools", "demo": "https://school-tools.afonsoingles.dev"}]...
|
[{"post_id": 68119, "ts": "202 [{"post_id": 68119, "ts": "2026-09-14T15:21:05Z", "hours": 3.9206, "text": "Heello! I fixed many bugs in the API and frontend, and also added the ability to reset passwords if you lost them! I also improved the login/signup pages."}, {"post_id": 66258, "ts": "2026-09-11T23:59:17Z", "hours": 1.9481, "text": "Heeello! I did a revamp on the admin users page. It is now WAY faster than the previous one, and searching works very well too! And admins can now hit the ban hammer on users. That will send them an email, and block them from accessing School Tools."}, {"post_id": 65659, "ts": "2026-09-10T23:03:33Z", "hours": 4.6875, "text": "Hi! I did a major revamp of the admin page and added statistics to it! You can now see user stats, adoption stats, and content stats (you must have admin, tho). Stats are automatically updated every hour, and can be manually updated by superadmins too. Superadmins also got the ability to nuke the redis db completely in development."}, {"post_id": 63106, "ts": "2026-09-06T18:39:35Z", "hours": 1.1003, "text": "Hello! The frontend now uses bun instead of npm, so it’s very fast now! If you have a profile picture in gravatar, that will now be your profile picture. Also, School Tools has a new logo! Bug fixes: Calendar now displays correctly on mobile DRY (Don’t repeat yourself) the code"}, {"post_id": 62575, "ts": "2026-09-06T01:11:21Z", "hours": 1.1608, "text": "I fixed some bugs around here and there and added basic support for the mobile UI. Mobile UI support was largely done with OpenCode"}, {"post_id": 62337, "ts": "2026-09-05T17:29:57Z", "hours": 2.1417, "text": "I added a new toggle so users can disable ICS generation. The functionality is off by default, tho users can manually enable it in the settings. Existing users will still have it on. QOL things: Change email change rate limit message Styling issues ICS generation now runs in another thread (api route) fix: Busiest day off by one Made more things use the local user timezone instead of the browser one fix animation not showing up on ‘regenerate calendar links’ popup"}, {"post_id": 61847, "ts": "2026-09-04T23:38:52Z", "hours": 4.4167, "text": "Hi! hi! The main point of this updated is that i added Homework support! You can see all your homework in a new shiny homework page. I also revamped the ‘Todays schedule’ in the main dashboard, and added a new homework widget there too A few QOL things: Added toaster responses in many parts of the code Calendar selection now uses the ‘Calendar’ item by shadcn instead of native OS /browser selector bug fixes here and there"}, {"post_id": 60576, "ts": "2026-09-03T00:44:54Z", "hours": 1.1347, "text": "Added a new shinny settings page! You can edit your name, email and password"}, {"post_id": 60294, "ts": "2026-09-02T15:51:00Z", "hours": 3.2308, "text": "New feature: • You can now change the icons of your subjects. If you already had subjects prior to this, its icon will be set as BookOpen. Bug fixes: • added very janky admin endpoints + ui. UI was mostly done by ai because its not public and just needs to work. I made the endpoints myself, even tho they are a bit janky. Will impove in the future.. • added a resend verification link button (only available after 6h) and logout button in the /auth/verify/pending page.."}, {"post_id": 59155, "ts": "2026-08-31T19:44:50Z", "hours": 4.0314, "text": "So, i had OpenCode do a look around the codebase for vulnerabilities and bugs that i should fix before release. However, the edits were done by me. This devlog is basically that: • fixed an IDOR vulnerability that allowed any authenticated user to uncancel any class by just having its ID. . • when trying to log in with an account that does not exist, the api now raises a password incorrect error instead of user_not_found . . • added rate limiting to /v1/auth/pwd (5 per minute) , /v1/auth/signup (20 per hour) and /v1/auth/verify (2 per minute). • Improve email validation on account creation. • Added password requirements on signup.. • Enforce email verified in endpoints. • Fixed a vuln that allowed the ?next=//example.com param to redirect to any website after login. • Added a FAQ in the calendar settings page ‘Why is my calendar not updating?’. • Don’t allow class deletion if used by evaluation. • Add loader and icon to the class deletion modal.. • Don’t allow subject deletion if used by class.. • Rename canceled to cancelled in many parts of the code.. • Ensure character count limit (8-50 in most places). • Relax rate limits. • [OpenCode] Created a migration worker. • Migration to remove depreacted onboarding_status field.. • Made many things TZ aware and added an user timezone field in the IANA format.. • [OpenCode] Tried, and failed to add mobile support.. • Standernize responses in the valid_json decorator. Many of the changes are non-visual, so i put the devlog image as the new FAQ."}, {"post_id": 57677, "ts": "2026-08-29T22:14:38Z", "hours": 5.8628, "text": "Hello! I have added ICS integration support, so now you can add your School Tools calendar in any of your prefered calendars! I started by making the job that generates the ICS per se. After that, i added API routes to integrate around it. I then integrated it into the frontend under /settings/calendar. There is also a tooltip in the normal calendar page!* The way ICS feeds work is basically every time there is a DB edit (such as class creation for example) the user is marked as ‘dirty’. Then, the ICS job that runs every five minutes, gets every dirty user and updates their ICS feeds. It doesn’t really matter that it isn’t updated automatically, since the majority of calendar providers have a long TTL for ICS subscriptions. (Google Calendar has ~12h TTL for example!) I also added a README. *Frontend integration was heavily AI assisted, but i supervised it and edited some things to ensure code quality."}, {"post_id": 55598, "ts": "2026-08-27T15:33:10Z", "hours": 1.8231, "text": "Hi! Recent updates: Added evaluation API routes and support in the UI Evaluations now show up in the calendar view added page names disabled homework (it’s coming in a future update!) small bug fixes"}, {"post_id": 55278, "ts": "2026-08-27T00:15:28Z", "hours": 5.1378, "text": "You can now create and view classes! You can also cancel them individually if anything came up."}, {"post_id": 52620, "ts": "2026-08-22T20:43:22Z", "hours": 4.6503, "text": "Added a scheduler WIP onboarding (import classes, evaluations, etc) Added subject routes and models. Added subjects in the UI under settings* adjusted some sentry configs bug fxes changed the admin icon *This had a lot of opencode assistance making it."}, {"post_id": 50629, "ts": "2026-08-19T21:34:54Z", "hours": 3.1142, "text": "Fix: Show real error messages in API Show real IPs on sentry/logs when behind reverse proxy Fix the redirect loop when stale cookie Let admins clear user caches from redis Add event models (classes, evaluations, schedule)"}, {"post_id": 46397, "ts": "2026-08-13T16:03:19Z", "hours": 8.0358, "text": "Okay, looong devlog. Made a backend (partially reused from old project) Email verification on account creation Dashboard now loads real user data verify email/login/signup email pages* Added sentry to both prod and dev sentry analytics Added logo and name to sidebar* page names and favicon lots of try and fail docker deployment* -> assisted with AI (OpenCode)"}, {"post_id": 41959, "ts": "2026-08-06T14:16:54Z", "hours": 1.4211, "text": "I have made a very WIP frontend"}]...
|
Title: School Tools by @afonso | Stardance
Devlog Title: School Tools by @afonso | Stardance
Devlogs:
I have made a very WIP frontend
Okay, looong devlog. Made a backend (partially reused from old project) Email verification on account creation Dashboard now loads real user data verify email/login/signup email pages* Added sentry to both prod and dev sentry analytics Added logo and name to sidebar* page names and favicon lots of try and fail docker deployment* -> assisted with AI (OpenCode)
Fix: Show real error messages in API Show real IPs on sentry/logs when behind reverse proxy Fix the redirect loop when stale cookie Let admins clear user caches from redis Add event models (classes, evaluations, schedule)
Added a scheduler WIP onboarding (import classes, evaluations, etc) Added subject routes and models. Added subjects in the UI under settings* adjusted some sentry configs bug fxes changed the admin icon *This had a lot of opencode assistance making it.
You can now create and view classes! You can also cancel them individually if anything came up.
Hi! Recent updates: Added evaluation API routes and support in the UI Evaluations now show up in the calendar view added page names disabled homework (it’s coming in a future update!) small bug fixes
Hello! I have added ICS integration support, so now you can add your School Tools calendar in any of your prefered calendars! I started by making the job that generates the ICS per se. After that, i added API routes to integrate around it. I then integrated it into the frontend under /settings/calendar. There is also a tooltip in the normal calendar page!* The way ICS feeds work is basically every time there is a DB edit (such as class creation for example) the user is marked as ‘dirty’. Then, the ICS job that runs every five minutes, gets every dirty user and updates their ICS feeds. It doesn’t really matter that it isn’t updated automatically, since the majority of calendar providers have a long TTL for ICS subscriptions. (Google Calendar has ~12h TTL for example!) I also added a README. *Frontend integration was heavily AI assisted, but i supervised it and edited some things to ensure code quality.
So, i had OpenCode do a look around the codebase for vulnerabilities and bugs that i should fix before release. However, the edits were done by me. This devlog is basically that: • fixed an IDOR vulnerability that allowed any authenticated user to uncancel any class by just having its ID. . • when trying to log in with an account that does not exist, the api now raises a password incorrect error instead of user_not_found . . • added rate limiting to /v1/auth/pwd (5 per minute) , /v1/auth/signup (20 per hour) and /v1/auth/verify (2 per minute). • Improve email validation on account creation. • Added password requirements on signup.. • Enforce email verified in endpoints. • Fixed a vuln that allowed the ?next=//example.com param to redirect to any website after login. • Added a FAQ in the calendar settings page ‘Why is my calendar not updating?’. • Don’t allow class deletion if used by evaluation. • Add loader and icon to the class deletion modal.. • Don’t allow subject deletion if used by class.. • Rename canceled to cancelled in many parts of the code.. • Ensure character count limit (8-50 in most places). • Relax rate limits. • [OpenCode] Created a migration worker. • Migration to remove depreacted onboarding_status field.. • Made many things TZ aware and added an user timezone field in the IANA format.. • [OpenCode] Tried, and failed to add mobile support.. • Standernize responses in the valid_json decorator. Many of the changes are non-visual, so i put the devlog image as the new FAQ.
New feature: • You can now change the icons of your subjects. If you already had subjects prior to this, its icon will be set as BookOpen. Bug fixes: • added very janky admin endpoints + ui. UI was mostly done by ai because its not public and just needs to work. I made the endpoints myself, even tho they are a bit janky. Will impove in the future.. • added a resend verification link button (only available after 6h) and logout button in the /auth/verify/pending page..
Added a new shinny settings page! You can edit your name, email and password
Hi! hi! The main point of this updated is that i added Homework support! You can see all your homework in a new shiny homework page. I also revamped the ‘Todays schedule’ in the main dashboard, and added a new homework widget there too A few QOL things: Added toaster responses in many parts of the code Calendar selection now uses the ‘Calendar’ item by shadcn instead of native OS /browser selector bug fixes here and there
I added a new toggle so users can disable ICS generation. The functionality is off by default, tho users can manually enable it in the settings. Existing users will still have it on. QOL things: Change email change rate limit message Styling issues ICS generation now runs in another thread (api route) fix: Busiest day off by one Made more things use the local user timezone instead of the browser one fix animation not showing up on ‘regenerate calendar links’ popup
I fixed some bugs around here and there and added basic support for the mobile UI. Mobile UI support was largely done with OpenCode
Hello! The frontend now uses bun instead of npm, so it’s very fast now! If you have a profile picture in gravatar, that will now be your profile picture. Also, School Tools has a new logo! Bug fixes: Calendar now displays correctly on mobile DRY (Don’t repeat yourself) the code
Hi! I did a major revamp of the admin page and added statistics to it! You can now see user stats, adoption stats, and content stats (you must have admin, tho). Stats are automatically updated every hour, and can be manually updated by superadmins too. Superadmins also got the ability to nuke the redis db completely in development.
Heeello! I did a revamp on the admin users page. It is now WAY faster than the previous one, and searching works very well too! And admins can now hit the ban hammer on users. That will send them an email, and block them from accessing School Tools.
Heello! I fixed many bugs in the API and frontend, and also added the ability to reset passwords if you lost them! I also improved the login/signup pages.
Ships:
School Tools is management platform for your study life. You can add your subjects, classes and evaluations. Building this project was so much fun, and I’m really proud of it. I found really challenging creating the ICS feeds and keeping them updated in a reliable way, but that was also fun to learn about.
This update majorly adds homework support. You can now create and view your homework! If you let it be overdue, it will also show you. Some other updates include adding icons to subjects and some basic account settings. Making this was fun, and i found really interesting figuring out how to add fields to existing users in prod (since mongodb doesn’t have migrations)
This update fixed some bugs in School Tools, and switched the frontend to use bun instead of npm!
This update added a new admin dashboard, with it’s endpoints rewritten to be more reliable. It also adds support for password reset, statistics (for admins) and a lot of bug fixes here-and-there....
|
1793713969.5402057
|
1793800369.5402057
|
|
66228
|
memorizor by @baibhavrajacharya | Stardance
|
baibhavrajacharya
|
0
|
1.08
|
0
|
[]
|
[{"post_id": 74365, "ts": "202 [{"post_id": 74365, "ts": "2026-09-27T07:46:18Z", "hours": 1.0767, "text": "memorizor"}]...
|
Title: memorizor by @baibhavrajacharya | Stardance Title: memorizor by @baibhavrajacharya | Stardance
Devlogs:
memorizor...
|
1793713971.1654704
|
1794318771.1654704
|
|
26971
|
Mini bass by @ItsYaBoyJanan | Stardance
|
ItsYaBoyJanan
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-23T08:32:15Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "At the beginning, I just found a cheap rusty broken speaker to be specific, a model called “m3 mini”. I opened it up and found the battery was puffed, the driver was popped. It was small in size and I decided to fix it. I got a 2 (approximately) woofer from an old speaker, and I connected it to the board, soldered on a missing capacitor and then replaced the battery, and boom, it was in life. The sound was good but I thought it lacked bass, I added another magnet behind the stock magnet of the same size, then I tried it. It was literally perfect! And I made a diy case with cardboard (my family and i aint got a computer/laptop or 3d printer to design or print one) and finally, it’s finished!", "repo": "https://github.com/ItsYaBoyJanan/Mini-bass", "demo": ""}]...
|
[{"post_id": 35752, "ts": "202 [{"post_id": 35752, "ts": "2026-07-27T12:06:47Z", "hours": 0.2833, "text": "Just finished adding two external wires for external amplified audio"}]...
|
Title: Mini bass by @ItsYaBoyJanan | Stardance
De Title: Mini bass by @ItsYaBoyJanan | Stardance
Devlogs:
Just finished adding two external wires for external amplified audio
Ships:
At the beginning, I just found a cheap rusty broken speaker to be specific, a model called “m3 mini”. I opened it up and found the battery was puffed, the driver was popped. It was small in size and I decided to fix it. I got a 2 (approximately) woofer from an old speaker, and I connected it to the board, soldered on a missing capacitor and then replaced the battery, and boom, it was in life. The sound was good but I thought it lacked bass, I added another magnet behind the stock magnet of the same size, then I tried it. It was literally perfect! And I made a diy case with cardboard (my family and i aint got a computer/laptop or 3d printer to design or print one) and finally, it’s finished!...
|
1793713972.8267734
|
1793800372.8267734
|
|
35451
|
Reaction Speed Test by @Armaan | Stardance
|
Armaan
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-17T03:00:25Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is a project that tests your reaction time. There was nothing challenging about the project, the only thing that confused me was what to make. I enjoyed making this project by using the final product it was a bit enjoying and addictive trying to beat your fastest time. To use this project, you need to open the project, then click the button “Press Start to begin” then you need to wait for the big square to turn green. Then you need to quickly press it. The fastest I got was 110ms. Can you beat it?", "repo": "https://github.com/ArmaanLambsar/Reaction-Test", "demo": "https://armaanlambsar.github.io/Reaction-Test/"}]...
|
[{"post_id": 29917, "ts": "202 [{"post_id": 29917, "ts": "2026-07-17T02:53:13Z", "hours": 0.6942, "text": "This is Day 2 and the Final of this project I fixed the running of the project and the visual is enhanced and is better than it was yesterday."}, {"post_id": 29253, "ts": "2026-07-16T01:37:31Z", "hours": 1.3489, "text": "This is a Reaction Speed Tester to test how fast your Reaction Time is. This is my Prototype which is pretty successful. Tomorrow, I’ll make a final part to this project to enhance the look and make it run even smoother."}]...
|
Title: Reaction Speed Test by @Armaan | Stardance
Title: Reaction Speed Test by @Armaan | Stardance
Devlogs:
This is a Reaction Speed Tester to test how fast your Reaction Time is. This is my Prototype which is pretty successful. Tomorrow, I’ll make a final part to this project to enhance the look and make it run even smoother.
This is Day 2 and the Final of this project I fixed the running of the project and the visual is enhanced and is better than it was yesterday.
Ships:
This is a project that tests your reaction time. There was nothing challenging about the project, the only thing that confused me was what to make. I enjoyed making this project by using the final product it was a bit enjoying and addictive trying to beat your fastest time. To use this project, you need to open the project, then click the button “Press Start to begin” then you need to wait for the big square to turn green. Then you need to quickly press it. The fastest I got was 110ms. Can you beat it?...
|
1793713975.3311005
|
1793800375.3311005
|