|
69553
|
Simple Mod Manager by @Guagyyy | Stardance
|
Guagyyy
|
0
|
7.09
|
0
|
[]
|
[{"post_id": 81663, "ts": "202 [{"post_id": 81663, "ts": "2026-10-21T23:13:15Z", "hours": 4.2228, "text": "I finished the screen class rendering the actual projects. This was mostly just trial and error, which is why it took so long, but now, I have a basic layout which I can expand upon. There are still a few issues with the image downloading, so I will have to fix that, but so far the actual project information getting pipeline seems to be flawless. I also created the detailed project widget, and made pseudocode for the rendering of it, however it is not fully implemented. Since the individual project pages will be a simple get request from the Modrinth API, it the detailed widget will just be constructing a different URL to perform the get request (as I will not be using the ‘search?’ part of the API). I am also planning to add Curseforge support, but that will only be done once the full Modrinth pipeline is done. I will likely commit the code tomorrow, as right now I am experiencing issues with committing to a different branch in GitHub, as I don’t want to commit to main, since that is only for releases."}, {"post_id": 79410, "ts": "2026-10-13T20:59:17Z", "hours": 2.8686, "text": "Simple Mod Manager is a lightweight utility that allows players to easily enable, disable, and manage their installed mods without manually moving files. For Stardance, I am trying to add the two most complicated features-creating an in game mod, resourcepack, and shader downloader, as well as a mod hot-swap to update mods in real time to avoid a full game restart. These will be difficult to perfect mostly because I have barely any experience in JVM class loading, and I have done little to no work with file downloading. Before Stardance, I had planned to make a separate mod called ModGuard with these things added, however I realized there wasn’t many features to add to it, and since I already had a decent user base to Simple Mod Manager, I decided to merge the two instead, so that users wouldn’t ever have to leave the game, or even restart it when installing any modifications (super helpful for modpack creators and streamlining the creation process)! 1. Download System: I fixed the download pipeline. For whatever reason, before fetching stuff from the api wasn’t working, and today I fixed that. It came down to a mix of a few issues both involving my internet connection, as well as a broken enum.toString() method getting called, which caused a crash. The old download system also didn’t support resourcepacks and shaders, so I added a few fields to the widget class, and made an enum to represent that (ProjectType). Now whenever fetching from the API, I must specify the type which I am getting (e.g. ProjectType.MOD), and it will filter for mods in the facets. After that was done and tested, I had the whole pipeline for downloading done, meaning I just needed something to represent the mods. 2. Screen System: I made a screen which had the facet buttons, project widgets, search bar, and tab bar. Since these were all stored inside of ArrayLists, I would only have to call the render method for each button within a for loop, making the rendering process super easy. After getting that to work, I added a few background containers, as well as a method to auto detect when a button/search query was changed and fetch the project details for the user. Now I just have to add automatic scrolling detection which will automatically call the API when I am out of projects to see. In order to avoid overlap, I will use the offset and limiters inside the Modrinth API query to skip the first set of mods which the user already saw, and then display the next set, by simply adding them to the ArrayList.. Next Steps: After I add those small features, the next step will be to extend the project widget class in order to make a more detailed version for when you actually click on the project to download it."}]...
|
Title: Simple Mod Manager by @Guagyyy | Stardance
Title: Simple Mod Manager by @Guagyyy | Stardance
Devlogs:
Simple Mod Manager is a lightweight utility that allows players to easily enable, disable, and manage their installed mods without manually moving files. For Stardance, I am trying to add the two most complicated features-creating an in game mod, resourcepack, and shader downloader, as well as a mod hot-swap to update mods in real time to avoid a full game restart. These will be difficult to perfect mostly because I have barely any experience in JVM class loading, and I have done little to no work with file downloading. Before Stardance, I had planned to make a separate mod called ModGuard with these things added, however I realized there wasn’t many features to add to it, and since I already had a decent user base to Simple Mod Manager, I decided to merge the two instead, so that users wouldn’t ever have to leave the game, or even restart it when installing any modifications (super helpful for modpack creators and streamlining the creation process)! 1. Download System: I fixed the download pipeline. For whatever reason, before fetching stuff from the api wasn’t working, and today I fixed that. It came down to a mix of a few issues both involving my internet connection, as well as a broken enum.toString() method getting called, which caused a crash. The old download system also didn’t support resourcepacks and shaders, so I added a few fields to the widget class, and made an enum to represent that (ProjectType). Now whenever fetching from the API, I must specify the type which I am getting (e.g. ProjectType.MOD), and it will filter for mods in the facets. After that was done and tested, I had the whole pipeline for downloading done, meaning I just needed something to represent the mods. 2. Screen System: I made a screen which had the facet buttons, project widgets, search bar, and tab bar. Since these were all stored inside of ArrayLists, I would only have to call the render method for each button within a for loop, making the rendering process super easy. After getting that to work, I added a few background containers, as well as a method to auto detect when a button/search query was changed and fetch the project details for the user. Now I just have to add automatic scrolling detection which will automatically call the API when I am out of projects to see. In order to avoid overlap, I will use the offset and limiters inside the Modrinth API query to skip the first set of mods which the user already saw, and then display the next set, by simply adding them to the ArrayList.. Next Steps: After I add those small features, the next step will be to extend the project widget class in order to make a more detailed version for when you actually click on the project to download it.
I finished the screen class rendering the actual projects. This was mostly just trial and error, which is why it took so long, but now, I have a basic layout which I can expand upon. There are still a few issues with the image downloading, so I will have to fix that, but so far the actual project information getting pipeline seems to be flawless. I also created the detailed project widget, and made pseudocode for the rendering of it, however it is not fully implemented. Since the individual project pages will be a simple get request from the Modrinth API, it the detailed widget will just be constructing a different URL to perform the get request (as I will not be using the ‘search?’ part of the API). I am also planning to add Curseforge support, but that will only be done once the full Modrinth pipeline is done. I will likely commit the code tomorrow, as right now I am experiencing issues with committing to a different branch in GitHub, as I don’t want to commit to main, since that is only for releases....
|
1792857113.7784348
|
1793461913.7784348
|
|
69418
|
Splatoon 3 Callout Guesser by @101zh | Stardance
|
101zh
|
0
|
5.68
|
0
|
[]
|
[{"post_id": 81665, "ts": "202 [{"post_id": 81665, "ts": "2026-10-21T23:22:34Z", "hours": 0.6558, "text": "Now logs which regions have been clicked in console. I plan to have it display on each region, but I’m still working on that. Commit Link (when public)"}, {"post_id": 81130, "ts": "2026-10-20T00:31:25Z", "hours": 4.1411, "text": "Created a selector for maps that brings up the map and the callout regions. Commit link"}, {"post_id": 79187, "ts": "2026-10-12T23:17:13Z", "hours": 0.8869, "text": "Create project and test idea. I went ahead created a Vite, React, Typescript app. Also attempted overlaying an svg on top of an image of a splatoon 3 map for different callout regions. Commit Link (when repo is public)"}]...
|
Title: Splatoon 3 Callout Guesser by @101zh | Star Title: Splatoon 3 Callout Guesser by @101zh | Stardance
Devlogs:
Create project and test idea. I went ahead created a Vite, React, Typescript app. Also attempted overlaying an svg on top of an image of a splatoon 3 map for different callout regions. Commit Link (when repo is public)
Created a selector for maps that brings up the map and the callout regions. Commit link
Now logs which regions have been clicked in console. I plan to have it display on each region, but I’m still working on that. Commit Link (when public)...
|
1792814118.8599827
|
1793418918.8599827
|
|
40589
|
DoFresh by @promise | Stardance
|
promise
|
1
|
101.8
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-14T00:30:17Z", "hours": 99.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What did you make? This is DoFresh, a refreshing task manager that turns consistency into records and graphs! What was challenging? On top of the various bugs that arose on the way to refine and polish various features, one challenge in creating DoFresh was designing and implementing the Track system. Firstly, the logic system surrounding behind user completion and daily refreshing was complex, especially when considering the users didn’t visit the website every day. Secondly, I strove to make graphs and tracking widgets that were self-explanatory and simple but stylish and understandable, and I had to refactor the Track page completely after I changed my data storage system, changing the types of charts and how each was organized. What are you proud of? I’m quite proud of how the website looks, as I’m really artistically untalented and never really got around to learning CSS or aesthetics or color theory. The purple prettiness of DoFresh is really an achievement for me, and I’m especially proud of how much design and UI/UX consideration I learned through this app. Now, when I open websites, I look at how they design their login pages, where they put their collapsible sidebar icons, and what headings they use—sideways, click-collapse, fixed above, sticky—and why. Another thing I’m quite proud of is the AI agent I personalized and implemented in the Chat page. I wired the API call system for Flask, then Django, with many small bugs for both scenarios, connecting the Python backend with HuggingFace’s free models. Then, two days after I began wrapping up and testing the site, HuggingFace removed its free tier altogether. (●__●) Thus I switched to using GroqCloud as a platform, making a new API key, and set to further refining how the bot understood the user’s completion data, programming it to fit DoFresh’s philosophy and purposes. What should people know so they can test your project? You can go into https://dofresh.onrender.com/ and log in with the credentials stardance_tester + stardance_tester (username + pw both) if you want an example with pre-filled data and records! Please note that (free tier) Render takes about ~40 seconds to load and may spin down to inactiveness if you leave it open and untouched.", "repo": "https://github.com/PurpleSummit/DoFresh", "demo": "https://dofresh.vercel.app"}]...
|
[{"post_id": 81668, "ts": "202 [{"post_id": 81668, "ts": "2026-10-22T00:01:39Z", "hours": 0.8292, "text": "added a custom user creation form to enable flexibility and clean error messages when signing up; debugged the sign-up page, allowed form box to expand, and added password confirmation box and feedback on account security"}, {"post_id": 80866, "ts": "2026-10-19T03:11:43Z", "hours": 1.0806, "text": "ATTENTION, SHIPWRIGHTS!! HERE, PLEASE!! HERE!! READ BELOW!!! i couldn’t edit the ship message’s contents, but hopefully you see this message! here are some things about the (new) ship… ▸ the new link for my project is here: https://dofresh.vercel.app . please use the credentials stardance_tester for both the username and the password!! THIS HAS ALL THE DATA FOR THE ACCOUNT, OR ELSE YOU NEED TO CREATE YOUR OWN DATA FOR YOUR ACCOUNT! ▸AI was NOT used for my devlogs, AI declaration, ship message, or README. i copied ASCII art, GitHub commit messages, and stylized font to the devlogs, not AI-generated summaries. i wrote my AI declaration in a separate Google Docs because my computer tended to restart and update at the wrong times. i wrote my ship message by myself! i used a part of my app description for the README, which, again, I wrote by myself. i have screenshots of my work below. anyways, for the devlog.. fixed the chat page so that a message can’t be sent while another is still generating!! debugged record() not establishing the variable recent_completed_pair before using it in the else-if conditional"}, {"post_id": 80287, "ts": "2026-10-17T03:50:49Z", "hours": 0.8883, "text": "debugged the refreshing lists not appearing at the sidebar debugged the ‘i did list’ not working debugged subtasks not appearing changed hosting platform from Render to Vercel! https://dofresh.vercel.app/ new link: https://dofresh.vercel.app/"}, {"post_id": 79439, "ts": "2026-10-14T00:10:48Z", "hours": 1.7119, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #39 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ hopefully the last devlog!! today, my very artistically talented friend gave me some very nice feedback about the login page, both directly and indirectly. sooo… debugged the list titles appearing as ‘undefined’ modified the login and sign-up pages!! aren’t they just so pretty [totally not similar]"}, {"post_id": 79078, "ts": "2026-10-12T16:12:33Z", "hours": 2.3017, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #38 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ with the Free tier for Hugging Face being closed, I switched to using Groq for API calls!! refined the chat feature by adding previous message context and restructuring the user task data for the migration to django fixed sidebar sign out button toggle and Chat textbox size changing debugged track page not appearing edited looks of completion tracking graph added task list appearing with breaks for task page tooltips"}, {"post_id": 78888, "ts": "2026-10-11T21:41:51Z", "hours": 0.8911, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #37 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ added formatting and HTML tag support for article page debugged 0/0 tasks and 0/0 list completion modal, which spiraled to infinity added NASA pictures for article iamges"}, {"post_id": 78499, "ts": "2026-10-11T00:12:26Z", "hours": 0.9383, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #36 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ fixed 500 Service Error for record() in views.py, optimizing iteration through list data and refining logic!!"}, {"post_id": 78238, "ts": "2026-10-10T02:44:32Z", "hours": 2.3283, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #35 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ now i really want to start shipping…! and submitting… please… today, sitting in the subway & waiting for/on my train, i refactored the advice page with a new Article class to dynamically display articles and created a new article detail page! updated advice.html to loop through articles, all objects of class Article in models.py, and display them dynamically added article.html template and the URL article/<int:article_id> added new CSS styles for article layout and text formatting (especially pre HTML blocks) i tried to upload images for the article cards into the database, but in production, i would need to find a cloud service provider (…and i need more )… so i reversed my hard work and uploaded the images to the static folder instead. additionally: moved the welcome modal and the refreshing notification/progress report modal HTML from index.html to layout.html so that the users would be able to see them in other pages of the website & debugged this debugged / cleaned up the logic and code for the tracking page’s fill-when-blank graphics."}, {"post_id": 77984, "ts": "2026-10-09T03:42:34Z", "hours": 4.4894, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #34 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ created + debugged completeRefreshingTask() from nonfunctional buggy to visibly seamless condition. debugged the function call’s missing button parameter at the click event handler. simplified idsToChange array composition, debugged parent to-do box HTML getting, added view.py function for backend reflection and change. added and debugged support for completing and matching subtasks & parent tasks.added animations and implemented/fixed logic structure of function. implemented, improved, and debugged task completion function components and edge case logic. tracked down and debugged one case of subtask handling error in addHTMLCompletedRefreshingTask() by changing the original JS key ‘subTasks’ to ‘subtasks’ and ‘parentTask’ to ‘parent_task’. added CSRF tokens to layout.html to enable POST methods for the general record/ and setLastDate() functions. debugged track.js to solve naming conflict in repeated uploads. added confetti and fireworks effect to task completion animations. moved Lumi from top of screen to stay in the sidebar for the user’s continuous view. debugged parent tasks switching the activeness of subtasks. added a ‘Refreshing tasks completed:’ counter at the top of the I Did List added today’s tasks to update the Refreshing Tasks Completed count. enabled the count text to collapse with the sidebar list. fixed some remaining localStorage-reliant code and the welcome modal’s sequencing. fixed Lumi position in login page. Debugged last_accessed_date being set in an empty user state."}, {"post_id": 75779, "ts": "2026-10-01T02:54:37Z", "hours": 2.6497, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #33 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ implemented set_last_date API endpoint and update last accessed date logic in views. refactored date handling in layout.js and script.js and designed date structure (ISO string format) to free conflict in regional time changes. migrated task completion recording function to Django (work-in-progress, not tested thoroughly). debugged and refactored the completion of tasks and updating completed tasks for improved performance and smooth HTML animation sequences & transitions. [added a new boolean condition to updateCompletedDiv so that it wouldn’t need to re-add the tasks every time it ran. yay performance improvement!]"}, {"post_id": 75397, "ts": "2026-09-29T23:02:30Z", "hours": 1.1839, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #32 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ debugged I Did List integration with Django; working as usual now. re-implemented Chat functions [display, Django Message models, and API calls]. started layout.js’s lastAccessedDate and refreshing date record functions with Django migration."}, {"post_id": 75054, "ts": "2026-09-29T00:39:37Z", "hours": 3.4697, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #31 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ added edit task, edit details, and remove task functionalities. implemented Django migration for track page!! added mock test data and confirmed that the track page works edited subtasks attribute to lists and edited views.py for Task objects to debug duplicate ID tasks. the django migration is going smoothly!! i’m quite proud of myself for getting editTask() and editDetails() in less than 5 minutes each. done in one go!!"}, {"post_id": 73437, "ts": "2026-09-25T02:47:56Z", "hours": 1.0464, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #30 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ debugged addTodoBox() implementation with fetch()… turns out response.json() was missing the ()!! implemented removeTodoBox() and addTask() with matching Python views and functions getting there… kind of getting there… i need to finish this off…"}, {"post_id": 72916, "ts": "2026-09-24T00:56:49Z", "hours": 1.4336, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #29 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ debugged to-do list and task HTML appearance with JavaScript fetch and new Django interactions established new data/fetch/global constant variables throughout script.js debugged I Did list’s usage of localStorage enabled adding lists and renaming lists with Django functions!"}, {"post_id": 72466, "ts": "2026-09-23T01:00:10Z", "hours": 5.9472, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #28 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ on the way to a full switch to Django: added login, logout, and signup views and functionalities to allow different users & management through the admin page working through bridging original usage of ‘localStorage’ and Django’s SQLite database—replacing many JavaScript functions with fetch and API calls drafted task, to-do list, and chat messages’ models in models.py fairly completed the HTML appearance for the JS -> Python fetch switch. app correctly generates the to-do lists, tasks, completed tasks, completed refreshing tasks, buttons, and subtasks"}, {"post_id": 68937, "ts": "2026-09-16T02:24:10Z", "hours": 3.2589, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #27 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ refactored ‘onclick’ event listeners to conditionals and casework using event.target.nearest(). removed setListeners() entirely, saving memory leaks and unneeded recursive usage of setListeners(). uploaded the app on Render (for free!!)!! changing DoFresh platform from Flask to Django! initialized app + project foundations, changed settings, established urls, views, and models -> all task-related functions are working. still work-in-process for API calls and the backend."}, {"post_id": 67643, "ts": "2026-09-13T19:58:03Z", "hours": 2.2042, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #26 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added smooth collapsing/expanding animations for task addition and removal nested completed-for-good tasks in the completed tasks div and debugged the task ID retrieval in script.js debugged task completion handling and every small issue arising with each update and tweak"}, {"post_id": 64573, "ts": "2026-09-09T02:37:42Z", "hours": 5.3239, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #25 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added zero-state filler graphics to the track page! replaced querySelector with getElementById and getElementsByClassName for better performance, speed, and efficiency all around the app. added filler div for chat UI lots of minor tweaks to UX in the task add-remove-check sequence of the dashboard page"}, {"post_id": 61236, "ts": "2026-09-04T02:16:54Z", "hours": 4.9286, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #24 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ debugged removal and creation of tasks with refactored js localstorage system! added zero state filler for main page if no boxes are present. debugged the different day headers showing up in the ‘I Did!’ list so that they don’t appear when no tasks are there at all. filler image work-in-progress. modified task creation to initialize with empty task strings instead of default text. cleaned up unused code and improved readability."}, {"post_id": 57019, "ts": "2026-08-29T02:54:53Z", "hours": 0.8256, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #23 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added headers and div s for the different completion dates in the I Did List implemented date formatting functions in script.js and organized/debugging the display and orientation of I Did list items so that both refreshing and standard, completed-today and completed-previously tasks would appear correctly."}, {"post_id": 56357, "ts": "2026-08-28T03:17:22Z", "hours": 8.3, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #22 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added streak activity chart, maximum streak, and longest active streak widgets to the track v.2 page! implemented ‘I Did List’ to keep track of completed tasks with date tags. keeps track of refreshing tasks’ completion over 1 week and all of the standard task completions on a collapsible sidebar in the dashboard. there are a lot of things to organize when dealing with dates… ISO date format, JS dateString format, parsing into milliseconds for comparison, etc. give me my strawberry coding notebook 🥲🥲 at least i’m having fun"}, {"post_id": 51180, "ts": "2026-08-20T18:00:30Z", "hours": 3.5881, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #21 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ day 2 of refactoring the whole track system… added activity heatmap chart after refactoring task completion chart implemented an activity heatmap to visualize task completion over time created a system of div s and span s for a “Github heatmap” orientation. added Bootstrap tooltips to display more information. much CSS effort was invested in accessibility + making a clean scrolling system and the weekday/month grid"}, {"post_id": 50666, "ts": "2026-08-19T22:56:32Z", "hours": 2.6619, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #20 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ created a blinking passive mode animation for Lumi refactored setLumiCostume function to loop the blinking animation without pause or transition effects (work in progress to make smoother!) decided to refactor track !! 600 lines of code… hopefully it’ll come alive again… added chartCompletion function to show number of completed tasks across days. JavaScript dynamics and Chart.js, CSS to create a responsive grid for the track dashboard, and HTML to reorder elements whoo"}, {"post_id": 49892, "ts": "2026-08-18T21:09:16Z", "hours": 1.6903, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #19 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ went through the whole process of editing the jumping animation again so that it would align better with the existing static character… yay… 🥹🥹 added lumi to the top of the to-do list and added animation for task completion"}, {"post_id": 49316, "ts": "2026-08-18T02:05:03Z", "hours": 0.4831, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #18 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added to-do list interaction to progress circle. debugged and refactored refresh notification modal display logic. designing time!! work in progress: a gamification (?) system and a star icon. say hi to lumi!! i did NOT spend 26 minutes on this… that’s just on the debugging… please show lumi some love and affectionate feedback!! i’ve never animated anything in my life before. ⭐ 💌"}, {"post_id": 48614, "ts": "2026-08-17T02:34:54Z", "hours": 2.84, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #17 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added new modal to pop up with ‘it’s a new day!’ and completion information. work in progress. added progress circle animations added a completedDate portion to standard to-do tasks so that daily reports can be yielded enabled tooltips for hovering over sidebar navigation updated styles for various components brainstorming several design ideas…"}, {"post_id": 47844, "ts": "2026-08-16T02:07:37Z", "hours": 2.4144, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #16 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ debugged preservation and correction of chart generation settings (i.e. no weekly history with monthly chart type) adjusted color schemes and area fill for charts added dropdown task menus in track page for subtask organization and access enabled the “mainstream” task to be clicked without enabling dropdown, instead relying on hover to toggle dropdown menu note: the data is fake! i haven’t been doing the stardance challenge since may ;)"}, {"post_id": 47233, "ts": "2026-08-15T00:47:56Z", "hours": 1.96, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #15 – shoot for the stars like 📸 ˚₊‧ ଳ ‧₊˚ ⋅ debugged completion and re-activation of both subtasks and “mainstream” tasks! fixed subtask element selection in different task-controlling functions; improved localStorage handling for task completion and prevented duplicate entries. the long-awaited UI update!! used a free gradient as a background, edited opacity and blur in layout.css. changed color schemes further and added glassy / transparency aesthetic to to-do boxes. debugged the case where task dropdown menus didn’t disappear when other tasks were clicked!! small UX updates that make life significantly less frustrating. (small when they’re there, big when they’re not… guys… i’m a totally unartistic soul and a coder… ui/ux designers please save me!!! we love you 💖💖)"}, {"post_id": 46381, "ts": "2026-08-13T15:37:45Z", "hours": 1.2958, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #14 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ debugged completion and re-activation of subtasks and “mainstream” tasks. fixed subtask element selection in functions; improved localStorage handling for task completion and prevented duplicate entries!"}, {"post_id": 45971, "ts": "2026-08-12T20:05:01Z", "hours": 1.8119, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #13 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ lucky number #13… i’m certainly suffering because of the subtask changes… 😄 added CSS and adjusted JavaScript to prevent disabling accordion collapse (conflict with new task dropdown) added CSS to task dropdown for hover-appear features and styling. refactored JavaScript: enabled proper removal and completion of tasks + subtasks! if a “mainstream” task is removed, so are all its substacks. a substack is removed cleanly. similarly, if an active “mainstream” task is completed, so are all of its subtasks. if it’s recovered from completion, however, the subtasks remain completed."}, {"post_id": 45430, "ts": "2026-08-11T21:19:26Z", "hours": 3.2161, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #12 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ updated CSS styles for buttons and task elements to improve layout and aesthetics: changed button styles from Bootstrap’s primary blue to custom logo purple added dropdown menus for tasks for another layer of safety in deletion added subtasks! (major change… help…) adjusted localStorage interactions, data structure, HTML/CSS code, and JavaScript logic for subtask management. improved user experience by adding focus and click event listeners for task editing and subtasks. had to decide whether to nestle subtasks within their parent tasks or by themselves in localStorage. finally settled on keeping all tasks on the same level for the sake of accessing them easily—instead, each subtask has a parentTask key, and a “mainstream” task has an array of their substack IDs."}, {"post_id": 44913, "ts": "2026-08-10T23:48:07Z", "hours": 1.9881, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #11 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ lots of small updates for this devlog. added loading spinner to chat function. updated and debugged styles—padding, sidebar, the body moving instead of overlapping with the expanded sidebar. updated chat message time logging. it’s the small things that matter… ;-;"}, {"post_id": 44371, "ts": "2026-08-10T02:46:29Z", "hours": 4.8058, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #10 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ heavily edited and debugged the new sidebar. adjusted previous javascript and html to accommodate it: updated padding and margin styles for better alignment. refactored layout structure to improve sidebar functionality and aesthetics. added JavaScript functionality for sidebar toggle and dynamic list generation in layout.js. removed unnecessary sidebar code and adjusted layout accordingly. implemented typewriter effect for generated chat responses! ⌨️"}, {"post_id": 42901, "ts": "2026-08-07T21:07:05Z", "hours": 2.0761, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #9 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ refactored chat response handling and improved error handling/user display. debugged empty-space messages for home page. updated sidebar navigation link UI and enhanced layout structure."}, {"post_id": 41699, "ts": "2026-08-06T02:45:42Z", "hours": 4.6119, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #8 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added chat message storage and retrieval with a sql database! includes a refresh function w/ a safety modal improved chat UI [slightly, i really need to improve the entire app’s UI. designers help me. i’m aesthetic but i need to learn web UI ㅠ]"}, {"post_id": 40970, "ts": "2026-08-04T20:59:32Z", "hours": 3.9067, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #7– shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ attempting to connect huggingface’s ai models to dofresh as backend api have attempted for 3 hours and 52 minutes and success!! need to refine formatting, token length, and css styling, but the backend is connected and running."}, {"post_id": 39230, "ts": "2026-08-02T01:56:29Z", "hours": 0.8717, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #6 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added dynamic display of advice articles [wip] updated advice HTML structure and CSS for improved layout"}, {"post_id": 38596, "ts": "2026-08-01T02:25:26Z", "hours": 0.8856, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #5 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added HTML and CSS template for the advice page, which will feature a series of blogs offering advice on productivity, mental health, and consistent growth [based on personal experiences] considering using free AI APIs to create an interactive analysis/support chatbot… please recommend me some free sources if you know any!! ❤️"}, {"post_id": 37637, "ts": "2026-07-30T14:53:42Z", "hours": 1.9881, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #4 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ each task has a collapsible ‘details’ textarea! (i) modified HTML and CSS to accommodate changes (ii) modified JavaScript [mostly the .parentElement locations] to adjust to structure (iii) disabled space-key toggle so that the user’s typing wouldn’t be interrupted updated the track page’s sidebar from position: fixed; to position: relative; and juggled around CSS + CSS to restore the page structure debugged: the fill-if-blank text now appears only once, even when a completed task is deleted and the number of active tasks is consistently 0"}, {"post_id": 37090, "ts": "2026-07-29T15:56:15Z", "hours": 1.4378, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #3 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ refactored localStorage format of storing tasks → {taskId: ‘task_1785339829783’, task: ‘look out the window’, details: ‘look out at the sky’, completedDates: []}. - this took a lot of effort, as does all structural change to storage in javascript. every function that pulled task data from localStorage had to be edited to accommodate this change, although i brought it upon myself by starting in the wrong direction. added ‘details’ to each task and styled them as textareas! updated alert for empty charts; prepended now, rather than appearing below the empty canvas"}, {"post_id": 36668, "ts": "2026-07-28T21:30:55Z", "hours": 1.275, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #2 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added randomized text for filling blank pages :D changed the stored date formats from date string s to ISO string for cleaner splitting and organization debugged removing the completed tasks! [i felt like a forensic scientist, only with console.log(‘this should be appearing more than once’) and lots of if-else statements]. turns out i was forgetting to setListeners() for the newly created HTML task elements. added charts tracking monthly progress [work in progress]"}, {"post_id": 36359, "ts": "2026-07-28T12:42:27Z", "hours": 0.4286, "text": "𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #1 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added safety modal boxes for removing to-do lists. debugged removal of completed tasks. to-do: ⋅˚₊‧ debug the completed tasks more! right now, only one completed task can be deleted at a time. uh-oh… ⋅˚₊‧"}]...
|
Title: DoFresh by @promise | Stardance
Devlogs:
𝐍 Title: DoFresh by @promise | Stardance
Devlogs:
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #1 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added safety modal boxes for removing to-do lists. debugged removal of completed tasks. to-do: ⋅˚₊‧ debug the completed tasks more! right now, only one completed task can be deleted at a time. uh-oh… ⋅˚₊‧
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #2 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added randomized text for filling blank pages :D changed the stored date formats from date string s to ISO string for cleaner splitting and organization debugged removing the completed tasks! [i felt like a forensic scientist, only with console.log(‘this should be appearing more than once’) and lots of if-else statements]. turns out i was forgetting to setListeners() for the newly created HTML task elements. added charts tracking monthly progress [work in progress]
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #3 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ refactored localStorage format of storing tasks → {taskId: ‘task_1785339829783’, task: ‘look out the window’, details: ‘look out at the sky’, completedDates: []}. - this took a lot of effort, as does all structural change to storage in javascript. every function that pulled task data from localStorage had to be edited to accommodate this change, although i brought it upon myself by starting in the wrong direction. added ‘details’ to each task and styled them as textareas! updated alert for empty charts; prepended now, rather than appearing below the empty canvas
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #4 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ each task has a collapsible ‘details’ textarea! (i) modified HTML and CSS to accommodate changes (ii) modified JavaScript [mostly the .parentElement locations] to adjust to structure (iii) disabled space-key toggle so that the user’s typing wouldn’t be interrupted updated the track page’s sidebar from position: fixed; to position: relative; and juggled around CSS + CSS to restore the page structure debugged: the fill-if-blank text now appears only once, even when a completed task is deleted and the number of active tasks is consistently 0
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #5 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added HTML and CSS template for the advice page, which will feature a series of blogs offering advice on productivity, mental health, and consistent growth [based on personal experiences] considering using free AI APIs to create an interactive analysis/support chatbot… please recommend me some free sources if you know any!! ❤️
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #6 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added dynamic display of advice articles [wip] updated advice HTML structure and CSS for improved layout
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #7– shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ attempting to connect huggingface’s ai models to dofresh as backend api have attempted for 3 hours and 52 minutes and success!! need to refine formatting, token length, and css styling, but the backend is connected and running.
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #8 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added chat message storage and retrieval with a sql database! includes a refresh function w/ a safety modal improved chat UI [slightly, i really need to improve the entire app’s UI. designers help me. i’m aesthetic but i need to learn web UI ㅠ]
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #9 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ refactored chat response handling and improved error handling/user display. debugged empty-space messages for home page. updated sidebar navigation link UI and enhanced layout structure.
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #10 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ heavily edited and debugged the new sidebar. adjusted previous javascript and html to accommodate it: updated padding and margin styles for better alignment. refactored layout structure to improve sidebar functionality and aesthetics. added JavaScript functionality for sidebar toggle and dynamic list generation in layout.js. removed unnecessary sidebar code and adjusted layout accordingly. implemented typewriter effect for generated chat responses! ⌨️
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #11 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ lots of small updates for this devlog. added loading spinner to chat function. updated and debugged styles—padding, sidebar, the body moving instead of overlapping with the expanded sidebar. updated chat message time logging. it’s the small things that matter… ;-;
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #12 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ updated CSS styles for buttons and task elements to improve layout and aesthetics: changed button styles from Bootstrap’s primary blue to custom logo purple added dropdown menus for tasks for another layer of safety in deletion added subtasks! (major change… help…) adjusted localStorage interactions, data structure, HTML/CSS code, and JavaScript logic for subtask management. improved user experience by adding focus and click event listeners for task editing and subtasks. had to decide whether to nestle subtasks within their parent tasks or by themselves in localStorage. finally settled on keeping all tasks on the same level for the sake of accessing them easily—instead, each subtask has a parentTask key, and a “mainstream” task has an array of their substack IDs.
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #13 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ lucky number #13… i’m certainly suffering because of the subtask changes… 😄 added CSS and adjusted JavaScript to prevent disabling accordion collapse (conflict with new task dropdown) added CSS to task dropdown for hover-appear features and styling. refactored JavaScript: enabled proper removal and completion of tasks + subtasks! if a “mainstream” task is removed, so are all its substacks. a substack is removed cleanly. similarly, if an active “mainstream” task is completed, so are all of its subtasks. if it’s recovered from completion, however, the subtasks remain completed.
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #14 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ debugged completion and re-activation of subtasks and “mainstream” tasks. fixed subtask element selection in functions; improved localStorage handling for task completion and prevented duplicate entries!
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #15 – shoot for the stars like 📸 ˚₊‧ ଳ ‧₊˚ ⋅ debugged completion and re-activation of both subtasks and “mainstream” tasks! fixed subtask element selection in different task-controlling functions; improved localStorage handling for task completion and prevented duplicate entries. the long-awaited UI update!! used a free gradient as a background, edited opacity and blur in layout.css. changed color schemes further and added glassy / transparency aesthetic to to-do boxes. debugged the case where task dropdown menus didn’t disappear when other tasks were clicked!! small UX updates that make life significantly less frustrating. (small when they’re there, big when they’re not… guys… i’m a totally unartistic soul and a coder… ui/ux designers please save me!!! we love you 💖💖)
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #16 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ debugged preservation and correction of chart generation settings (i.e. no weekly history with monthly chart type) adjusted color schemes and area fill for charts added dropdown task menus in track page for subtask organization and access enabled the “mainstream” task to be clicked without enabling dropdown, instead relying on hover to toggle dropdown menu note: the data is fake! i haven’t been doing the stardance challenge since may ;)
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #17 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added new modal to pop up with ‘it’s a new day!’ and completion information. work in progress. added progress circle animations added a completedDate portion to standard to-do tasks so that daily reports can be yielded enabled tooltips for hovering over sidebar navigation updated styles for various components brainstorming several design ideas…
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #18 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added to-do list interaction to progress circle. debugged and refactored refresh notification modal display logic. designing time!! work in progress: a gamification (?) system and a star icon. say hi to lumi!! i did NOT spend 26 minutes on this… that’s just on the debugging… please show lumi some love and affectionate feedback!! i’ve never animated anything in my life before. ⭐ 💌
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #19 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ went through the whole process of editing the jumping animation again so that it would align better with the existing static character… yay… 🥹🥹 added lumi to the top of the to-do list and added animation for task completion
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #20 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ created a blinking passive mode animation for Lumi refactored setLumiCostume function to loop the blinking animation without pause or transition effects (work in progress to make smoother!) decided to refactor track !! 600 lines of code… hopefully it’ll come alive again… added chartCompletion function to show number of completed tasks across days. JavaScript dynamics and Chart.js, CSS to create a responsive grid for the track dashboard, and HTML to reorder elements whoo
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #21 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ day 2 of refactoring the whole track system… added activity heatmap chart after refactoring task completion chart implemented an activity heatmap to visualize task completion over time created a system of div s and span s for a “Github heatmap” orientation. added Bootstrap tooltips to display more information. much CSS effort was invested in accessibility + making a clean scrolling system and the weekday/month grid
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #22 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added streak activity chart, maximum streak, and longest active streak widgets to the track v.2 page! implemented ‘I Did List’ to keep track of completed tasks with date tags. keeps track of refreshing tasks’ completion over 1 week and all of the standard task completions on a collapsible sidebar in the dashboard. there are a lot of things to organize when dealing with dates… ISO date format, JS dateString format, parsing into milliseconds for comparison, etc. give me my strawberry coding notebook 🥲🥲 at least i’m having fun
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #23 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added headers and div s for the different completion dates in the I Did List implemented date formatting functions in script.js and organized/debugging the display and orientation of I Did list items so that both refreshing and standard, completed-today and completed-previously tasks would appear correctly.
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #24 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ debugged removal and creation of tasks with refactored js localstorage system! added zero state filler for main page if no boxes are present. debugged the different day headers showing up in the ‘I Did!’ list so that they don’t appear when no tasks are there at all. filler image work-in-progress. modified task creation to initialize with empty task strings instead of default text. cleaned up unused code and improved readability.
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #25 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added zero-state filler graphics to the track page! replaced querySelector with getElementById and getElementsByClassName for better performance, speed, and efficiency all around the app. added filler div for chat UI lots of minor tweaks to UX in the task add-remove-check sequence of the dashboard page
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #26 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ added smooth collapsing/expanding animations for task addition and removal nested completed-for-good tasks in the completed tasks div and debugged the task ID retrieval in script.js debugged task completion handling and every small issue arising with each update and tweak
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #27 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ refactored ‘onclick’ event listeners to conditionals and casework using event.target.nearest(). removed setListeners() entirely, saving memory leaks and unneeded recursive usage of setListeners(). uploaded the app on Render (for free!!)!! changing DoFresh platform from Flask to Django! initialized app + project foundations, changed settings, established urls, views, and models -> all task-related functions are working. still work-in-process for API calls and the backend.
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #28 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ on the way to a full switch to Django: added login, logout, and signup views and functionalities to allow different users & management through the admin page working through bridging original usage of ‘localStorage’ and Django’s SQLite database—replacing many JavaScript functions with fetch and API calls drafted task, to-do list, and chat messages’ models in models.py fairly completed the HTML appearance for the JS -> Python fetch switch. app correctly generates the to-do lists, tasks, completed tasks, completed refreshing tasks, buttons, and subtasks
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #29 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ debugged to-do list and task HTML appearance with JavaScript fetch and new Django interactions established new data/fetch/global constant variables throughout script.js debugged I Did list’s usage of localStorage enabled adding lists and renaming lists with Django functions!
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #30 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ ⋅ debugged addTodoBox() implementation with fetch()… turns out response.json() was missing the ()!! implemented removeTodoBox() and addTask() with matching Python views and functions getting there… kind of getting there… i need to finish this off…
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #31 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ added edit task, edit details, and remove task functionalities. implemented Django migration for track page!! added mock test data and confirmed that the track page works edited subtasks attribute to lists and edited views.py for Task objects to debug duplicate ID tasks. the django migration is going smoothly!! i’m quite proud of myself for getting editTask() and editDetails() in less than 5 minutes each. done in one go!!
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #32 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ debugged I Did List integration with Django; working as usual now. re-implemented Chat functions [display, Django Message models, and API calls]. started layout.js’s lastAccessedDate and refreshing date record functions with Django migration.
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #33 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ implemented set_last_date API endpoint and update last accessed date logic in views. refactored date handling in layout.js and script.js and designed date structure (ISO string format) to free conflict in regional time changes. migrated task completion recording function to Django (work-in-progress, not tested thoroughly). debugged and refactored the completion of tasks and updating completed tasks for improved performance and smooth HTML animation sequences & transitions. [added a new boolean condition to updateCompletedDiv so that it wouldn’t need to re-add the tasks every time it ran. yay performance improvement!]
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #34 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ created + debugged completeRefreshingTask() from nonfunctional buggy to visibly seamless condition. debugged the function call’s missing button parameter at the click event handler. simplified idsToChange array composition, debugged parent to-do box HTML getting, added view.py function for backend reflection and change. added and debugged support for completing and matching subtasks & parent tasks.added animations and implemented/fixed logic structure of function. implemented, improved, and debugged task completion function components and edge case logic. tracked down and debugged one case of subtask handling error in addHTMLCompletedRefreshingTask() by changing the original JS key ‘subTasks’ to ‘subtasks’ and ‘parentTask’ to ‘parent_task’. added CSRF tokens to layout.html to enable POST methods for the general record/ and setLastDate() functions. debugged track.js to solve naming conflict in repeated uploads. added confetti and fireworks effect to task completion animations. moved Lumi from top of screen to stay in the sidebar for the user’s continuous view. debugged parent tasks switching the activeness of subtasks. added a ‘Refreshing tasks completed:’ counter at the top of the I Did List added today’s tasks to update the Refreshing Tasks Completed count. enabled the count text to collapse with the sidebar list. fixed some remaining localStorage-reliant code and the welcome modal’s sequencing. fixed Lumi position in login page. Debugged last_accessed_date being set in an empty user state.
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #35 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ now i really want to start shipping…! and submitting… please… today, sitting in the subway & waiting for/on my train, i refactored the advice page with a new Article class to dynamically display articles and created a new article detail page! updated advice.html to loop through articles, all objects of class Article in models.py, and display them dynamically added article.html template and the URL article/<int:article_id> added new CSS styles for article layout and text formatting (especially pre HTML blocks) i tried to upload images for the article cards into the database, but in production, i would need to find a cloud service provider (…and i need more )… so i reversed my hard work and uploaded the images to the static folder instead. additionally: moved the welcome modal and the refreshing notification/progress report modal HTML from index.html to layout.html so that the users would be able to see them in other pages of the website & debugged this debugged / cleaned up the logic and code for the tracking page’s fill-when-blank graphics.
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #36 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ fixed 500 Service Error for record() in views.py, optimizing iteration through list data and refining logic!!
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #37 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ added formatting and HTML tag support for article page debugged 0/0 tasks and 0/0 list completion modal, which spiraled to infinity added NASA pictures for article iamges
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #38 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ with the Free tier for Hugging Face being closed, I switched to using Groq for API calls!! refined the chat feature by adding previous message context and restructuring the user task data for the migration to django fixed sidebar sign out button toggle and Chat textbox size changing debugged track page not appearing edited looks of completion tracking graph added task list appearing with breaks for task page tooltips
𝐍𝐨𝐰 𝐥𝐨𝐚𝐝𝐢𝐧𝐠. . . devlog #39 – shoot for the stars like 📸 ⋅˚₊‧ ଳ ‧₊˚ hopefully the last devlog!! today, my very artistically talented friend gave me some very nice feedback about the login page, both directly and indirectly. sooo… debugged the list titles appearing as ‘undefined’ modified the login and sign-up pages!! aren’t they just so pretty [totally not similar]
debugged the refreshing lists not appearing at the sidebar debugged the ‘i did list’ not working debugged subtasks not appearing changed hosting platform from Render to Vercel! https://dofresh.vercel.app/ new link: https://dofresh.vercel.app/
ATTENTION, SHIPWRIGHTS!! HERE, PLEASE!! HERE!! READ BELOW!!! i couldn’t edit the ship message’s contents, but hopefully you see this message! here are some things about the (new) ship… ▸ the new link for my project is here: https://dofresh.vercel.app . please use the credentials stardance_tester for both the username and the password!! THIS HAS ALL THE DATA FOR THE ACCOUNT, OR ELSE YOU NEED TO CREATE YOUR OWN DATA FOR YOUR ACCOUNT! ▸AI was NOT used for my devlogs, AI declaration, ship message, or README. i copied ASCII art, GitHub commit messages, and stylized font to the devlogs, not AI-generated summaries. i wrote my AI declaration in a separate Google Docs because my computer tended to restart and update at the wrong times. i wrote my ship message by myself! i used a part of my app description for the README, which, again, I wrote by myself. i have screenshots of my work below. anyways, for the devlog.. fixed the chat page so that a message can’t be sent while another is still generating!! debugged record() not establishing the variable recent_completed_pair before using it in the else-if conditional
added a custom user creation form to enable flexibility and clean error messages when signing up; debugged the sign-up page, allowed form box to expand, and added password confirmation box and feedback on account security
Ships:
What did you make? This is DoFresh, a refreshing task manager that turns consistency into records and graphs! What was challenging? On top of the various bugs that arose on the way to refine and polish various features, one challenge in creating DoFresh was designing and implementing the Track system. Firstly, the logic system surrounding behind user completion and daily refreshing was complex, especially when considering the users didn’t visit the website every day. Secondly, I strove to make graphs and tracking widgets that were self-explanatory and simple but stylish and understandable, and I had to refactor the Track page completely after I changed my data storage system, changing the types of charts and how each was organized. What are you proud of? I’m quite proud of how the website looks, as I’m really artistically untalented and never really got around to learning CSS or aesthetics or color theory. The purple prettiness of DoFresh is really an achievement for me, and I’m especially proud of how much design and UI/UX consideration I learned through this app. Now, when I open websites, I look at how they design their login pages, where they put their collapsible sidebar icons, and what headings they use—sideways, click-collapse, fixed above, sticky—and why. Another thing I’m quite proud of is the AI agent I personalized and implemented in the Chat page. I wired the API call system for Flask, then Django, with many small bugs for both scenarios, connecting the Python backend with HuggingFace’s free models. Then, two days after I began wrapping up and testing the site, HuggingFace removed its free tier altogether. (●__●) Thus I switched to using GroqCloud as a platform, making a new API key, and set to further refining how the bot understood the user’s completion data, programming it to fit DoFresh’s philosophy and purposes. What should people know so they can test your project? You can go into https://dofresh.onrender.com/ and log in with the credentials stardance_tester + stardance_tester (username + pw both) if you want an example with pre-filled data and records! Please note that (free tier) Render takes about ~40 seconds to load and may spin down to inactiveness if you leave it open and untouched....
|
1792860496.9765804
|
1792946896.9765804
|
|
26068
|
Crunchyroll Audio Helper Extension by @AndyNoob | Crunchyroll Audio Helper Extension by @AndyNoob | Stardance...
|
AndyNoob
|
1
|
15.46
|
99
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-06T05:10:04Z", "hours": 10.0, "multiplier": 9.56, "payout": 99, "blessing": "neutral", "text": "Well, it has been a fun 10 hours of reverse engineering Crunchyroll, but the extension/userscript is (probably) ready! I supposed the most annoying part is figuring out how to reliably inject code onto the page. Afterwards, it was the matter of changing the offset on the raw audio data. If you want to try this out, it’s available on Chrome and as a userscript for Tampermonkey 🥳. Otherwise, GIF and screenshots are available.", "repo": "https://github.com/AndyNoob/crunchyroll-audio-helper", "demo": "https://chromewebstore.google.com/detail/crunchyroll-audio-extensi/mnojgeohmdbfmlaejggmknkoijbaeaif"}]...
|
[{"post_id": 81670, "ts": "202 [{"post_id": 81670, "ts": "2026-10-22T00:36:05Z", "hours": 1.6256, "text": "It’s freaking instant now haha! Applying an offset will reload the player. - Had to do some bs trickery to get Shaka to do my bidding though. Reference: code report on Shaka generated by deepseek-v3-flash , which managed to catch a very specific pattern in the engine. - The engine, upon seeking, will check its copies of DOM’s SourceBuffer for its loaded range. By hijacking that value, one can make Shaka reload the buffer entirely, with the new offset applied. - That’s the gist of it. I pray that Crunchy doesn’t update Shaka anytime soon or I will cry…"}, {"post_id": 81492, "ts": "2026-10-21T14:15:58Z", "hours": 1.2264, "text": "Contrary to the last devlog, I was not, in fact, that close. - Anyways I actually did it now. It turned out to be slightly easier than I thought since I could just access the native SourceBuffer directly. - Still has an issue of needing the buffers to run out before the offset is actually applied, unfortunately"}, {"post_id": 81351, "ts": "2026-10-20T22:30:43Z", "hours": 0.7364, "text": "js got rated limited by crunchy while trying to fix compat with the croptix extension. - for context croptix’s latest recode to v2 switched the default media engine from bitmovin to shaka, which broke this extension (and dropped my user count by 20). the author of croptix isn’t responding to my PR to switch back to bitmovin so i guess i just gotta add shaka support. - unfortunately that is not going so well……….. AHHHHHHHHHHHHHH i was so close too"}, {"post_id": 79414, "ts": "2026-10-13T21:19:47Z", "hours": 1.8683, "text": "AHHHHHHHHHHHHH CRUNCHYROLL WHYY - I really need a better workflow… it’s annoying to switch between Webstorm, then extension refresh tab, then Crunchyroll every time I make a change : - Anyways, since crunchy wants to update their player for no reason, the extension… BROKE. So, I decided to stop hardcoding the obfuscated variables and instead search for them like I do with the modules. - Now, this relies on the unobfuscated names being stable/consistent. If that breaks, I will cry. - Also I literally could not find a interesting thing to take a screenshot of. The workflow is actually so boring…"}, {"post_id": 23290, "ts": "2026-07-06T04:54:25Z", "hours": 1.6928, "text": "Did some cleanup on the code to make it look like I know what I am doing 😆. Not much to show so I’ll just do a screenshot of the tampermonkey script header?"}, {"post_id": 21121, "ts": "2026-07-02T22:27:37Z", "hours": 1.8378, "text": "Alrighty! The audio offset application is actually instant now! Unfortunately, I had to enlist some help from Claude to get the CMAF media data parsing/editing to get it to work : . But, it works like a charm now. Yay. Essentially, now the extension stores the buffered audio, and when offset changes, directly edits the time offset value in the cloned raw audio data (which is in the CMAF format), clears the old buffer, and then adds our cloned version. This also means I have to rewrite the README and re-record the DEMO 🫠. (also, the Jetbrains README editor is lowk goated)"}, {"post_id": 19480, "ts": "2026-06-30T20:11:45Z", "hours": 0.4333, "text": "Made the icon and added some build scripts to automatically export as PNG from the source photoshop file (which I made with Photopea). Took a minute to refine it. It looks a bit weird zoomed out and being so pixelated, but you can tell it’s my extension at least"}, {"post_id": 18085, "ts": "2026-06-29T02:32:45Z", "hours": 2.7017, "text": "Well, I got the extension loaded as a userscript in Tampermonkey. But I can’t seem to figure out why it wouldn’t auto install my script from the Github raw user content page"}, {"post_id": 16467, "ts": "2026-06-26T20:15:11Z", "hours": 1.2333, "text": "Ok. Dug into Crunchyroll’s code a bit more and maybe found a way to apply the offset faster instead of waiting for the previous buffers to run out. The video doesn’t really make it clear (recording freezes because DRM protection), but the audio updated when the timeline jumped. The delay was about a few seconds. Gonna go test tis on Chrome now 🙏."}, {"post_id": 16060, "ts": "2026-06-26T03:01:38Z", "hours": 1.0486, "text": "Managed to style this thing. Actually works pretty well! I wanted to get rid of those ugly up/down arrows, but it’s really annoying to get rid of for some reason… Whatever. Probably will upload this both as an extension and as a Tampermonkey user script."}, {"post_id": 15999, "ts": "2026-06-25T23:50:32Z", "hours": 1.4539, "text": "First devlog! In the past 4 hours or so (poking the website doesn’t count towards Hackatime unfortunately), I managed to monkey patch Crunchyroll’s web packed audio buffering code. After that, I figured out how to force the video player to error out so that it reloads itself. So, the main functionality of the helper extension is done (I think)! Other than that, I managed to inject a little button into the video player :). Credits to Google Material Icons. Gonna go make this button work now… yay."}]...
|
Title: Crunchyroll Audio Helper Extension by @Andy Title: Crunchyroll Audio Helper Extension by @AndyNoob | Stardance
Devlogs:
First devlog! In the past 4 hours or so (poking the website doesn’t count towards Hackatime unfortunately), I managed to monkey patch Crunchyroll’s web packed audio buffering code. After that, I figured out how to force the video player to error out so that it reloads itself. So, the main functionality of the helper extension is done (I think)! Other than that, I managed to inject a little button into the video player :). Credits to Google Material Icons. Gonna go make this button work now… yay.
Managed to style this thing. Actually works pretty well! I wanted to get rid of those ugly up/down arrows, but it’s really annoying to get rid of for some reason… Whatever. Probably will upload this both as an extension and as a Tampermonkey user script.
Ok. Dug into Crunchyroll’s code a bit more and maybe found a way to apply the offset faster instead of waiting for the previous buffers to run out. The video doesn’t really make it clear (recording freezes because DRM protection), but the audio updated when the timeline jumped. The delay was about a few seconds. Gonna go test tis on Chrome now 🙏.
Well, I got the extension loaded as a userscript in Tampermonkey. But I can’t seem to figure out why it wouldn’t auto install my script from the Github raw user content page
Made the icon and added some build scripts to automatically export as PNG from the source photoshop file (which I made with Photopea). Took a minute to refine it. It looks a bit weird zoomed out and being so pixelated, but you can tell it’s my extension at least
Alrighty! The audio offset application is actually instant now! Unfortunately, I had to enlist some help from Claude to get the CMAF media data parsing/editing to get it to work : . But, it works like a charm now. Yay. Essentially, now the extension stores the buffered audio, and when offset changes, directly edits the time offset value in the cloned raw audio data (which is in the CMAF format), clears the old buffer, and then adds our cloned version. This also means I have to rewrite the README and re-record the DEMO 🫠. (also, the Jetbrains README editor is lowk goated)
Did some cleanup on the code to make it look like I know what I am doing 😆. Not much to show so I’ll just do a screenshot of the tampermonkey script header?
AHHHHHHHHHHHHH CRUNCHYROLL WHYY - I really need a better workflow… it’s annoying to switch between Webstorm, then extension refresh tab, then Crunchyroll every time I make a change : - Anyways, since crunchy wants to update their player for no reason, the extension… BROKE. So, I decided to stop hardcoding the obfuscated variables and instead search for them like I do with the modules. - Now, this relies on the unobfuscated names being stable/consistent. If that breaks, I will cry. - Also I literally could not find a interesting thing to take a screenshot of. The workflow is actually so boring…
js got rated limited by crunchy while trying to fix compat with the croptix extension. - for context croptix’s latest recode to v2 switched the default media engine from bitmovin to shaka, which broke this extension (and dropped my user count by 20). the author of croptix isn’t responding to my PR to switch back to bitmovin so i guess i just gotta add shaka support. - unfortunately that is not going so well……….. AHHHHHHHHHHHHHH i was so close too
Contrary to the last devlog, I was not, in fact, that close. - Anyways I actually did it now. It turned out to be slightly easier than I thought since I could just access the native SourceBuffer directly. - Still has an issue of needing the buffers to run out before the offset is actually applied, unfortunately
It’s freaking instant now haha! Applying an offset will reload the player. - Had to do some bs trickery to get Shaka to do my bidding though. Reference: code report on Shaka generated by deepseek-v3-flash , which managed to catch a very specific pattern in the engine. - The engine, upon seeking, will check its copies of DOM’s SourceBuffer for its loaded range. By hijacking that value, one can make Shaka reload the buffer entirely, with the new offset applied. - That’s the gist of it. I pray that Crunchy doesn’t update Shaka anytime soon or I will cry…
Ships:
Well, it has been a fun 10 hours of reverse engineering Crunchyroll, but the extension/userscript is (probably) ready! I supposed the most annoying part is figuring out how to reliably inject code onto the page. Afterwards, it was the matter of changing the offset on the raw audio data. If you want to try this out, it’s available on Chrome and as a userscript for Tampermonkey 🥳. Otherwise, GIF and screenshots are available....
|
1792831650.6429937
|
1792918050.6429937
|
|
57738
|
My Cardy by @itsaperson | Stardance
|
itsaperson
|
0
|
2.05
|
0
|
[]
|
[{"post_id": 81682, "ts": "202 [{"post_id": 81682, "ts": "2026-10-22T01:22:15Z", "hours": 1.0008, "text": "Some touch ups on the pcb, made sure I’ve exported everything, and then uploaded to github for review! (I forgot to devlog this devlog was kinda done after approval oopsies just realised had an hour unlogged). Also updated the pcb for some positionings etc. Just minor tweaks but very effective. Also added the diamond thing for the led so that the led looks like a diamond!"}, {"post_id": 60770, "ts": "2026-09-03T11:14:03Z", "hours": 0.7344, "text": "Spent a while desinging the pcb, after got everything wired up, took wayy to long trying to position everything correctly. As well as making everything look nice, but I think it was worth it!"}, {"post_id": 60738, "ts": "2026-09-03T09:37:12Z", "hours": 0.3192, "text": "Went on the stardance hardware resources section, and I saw that it gave as an example for the funding first tier a “pcb buisiness card”. At first, I was curious to see what it was. After some research, I found out that it was… A buisiness card. Wow! I got really interested, and wanted to make my own, but I didn’t know where to start. Then I realised that hackclub basically has tutorials on everything. So I went on the internet, and searched “pcb business card hackclub”. Sure enough, there it was! https://jams.hackclub.com/jam/hacker-card . So I followed through the tutorial, and managed to finish making the schematics. Now it’s time for the pcb"}]...
|
Title: My Cardy by @itsaperson | Stardance
Devlog Title: My Cardy by @itsaperson | Stardance
Devlogs:
Went on the stardance hardware resources section, and I saw that it gave as an example for the funding first tier a “pcb buisiness card”. At first, I was curious to see what it was. After some research, I found out that it was… A buisiness card. Wow! I got really interested, and wanted to make my own, but I didn’t know where to start. Then I realised that hackclub basically has tutorials on everything. So I went on the internet, and searched “pcb business card hackclub”. Sure enough, there it was! https://jams.hackclub.com/jam/hacker-card . So I followed through the tutorial, and managed to finish making the schematics. Now it’s time for the pcb
Spent a while desinging the pcb, after got everything wired up, took wayy to long trying to position everything correctly. As well as making everything look nice, but I think it was worth it!
Some touch ups on the pcb, made sure I’ve exported everything, and then uploaded to github for review! (I forgot to devlog this devlog was kinda done after approval oopsies just realised had an hour unlogged). Also updated the pcb for some positionings etc. Just minor tweaks but very effective. Also added the diamond thing for the led so that the led looks like a diamond!...
|
1792720047.7148263
|
1793324847.7148263
|
|
21411
|
ShooterManGame by @RileyTheSane | Stardance
|
RileyTheSane
|
0
|
50.14
|
0
|
[]
|
[{"post_id": 81688, "ts": "202 [{"post_id": 81688, "ts": "2026-10-22T02:55:04Z", "hours": 3.0206, "text": "You can now change the difficulty of the game! Below is a little preview of what the different difficulties look like in the last wave, and there is no sound because I forgot to enable it. The next thing I’ll work on is a scoring system. Hopefully I can get that done quickly because it is approaching the deadline yet again."}, {"post_id": 80536, "ts": "2026-10-18T03:02:16Z", "hours": 2.4469, "text": "I added a bunch of sound effects, and the game just feels so much better now. After I finish sound effects, I will add a difficulty setting and make some small tweaks before shipping. Shipping feels so close yet so far."}, {"post_id": 79934, "ts": "2026-10-15T18:08:31Z", "hours": 9.9069, "text": "How do animators do it? I’ve been working on an animation for Bob’s backstory, and I’m losing the desire to ever touch an animation timeline again. I finished all of the animation frames and sound effects, but this isn’t the full thing yet because I’m still putting the entire animation together."}, {"post_id": 62676, "ts": "2026-09-06T04:58:32Z", "hours": 3.7964, "text": "I made the title screem and it works (necessary) also look what I figured out how to do: 🎉 Ⓜ️ ⭕"}, {"post_id": 59349, "ts": "2026-09-01T02:54:15Z", "hours": 3.6314, "text": "I added fortnite storm but like red⛈️ and : a second larger health bar that appears when you leave the camera view the damage while outside the screen increases by one every time you take storm damage but resets when you re-enter the camera view I do think I went overboard with the vignette; I will probably be dialing it back later"}, {"post_id": 46105, "ts": "2026-08-13T02:52:46Z", "hours": 0.6894, "text": "Finished redesigning the “Wave #” text, and I had to redo the outro animation. I had to find a balance between wiggly and seizure inducing bc the wiggly style is quite violent when scaled up. I might change it later… Does anybody know how to get time recorded with Lapse/Lookout added to your project here on Stardance?"}, {"post_id": 45530, "ts": "2026-08-12T02:20:26Z", "hours": 0.7753, "text": "Started working on hand drawing all of the text, got the wave title and its wiggle done. I will be making the wiggle less severe though."}, {"post_id": 44337, "ts": "2026-08-10T01:04:44Z", "hours": 0.6575, "text": "git commit -m “Fixed bob’s healthbar, fixed button not re-appearing after first retry, gave retry button more wiggly style” best devlog oat? I think I’m gonna replace the passive-aggressive text with a voice-over and start hand-drawing all of the text; bouta suffer and it’s all my own fault🙏."}, {"post_id": 43110, "ts": "2026-08-08T06:16:34Z", "hours": 4.8125, "text": "Reset Button + Linux Trouble I made this reset button and it took hella long. I had no idea where to start, and it looks quite out of place because of how 9-piece buttons work. When you press it, the button disappears and the screen fades. After a second, bob fades back into existence, and wave 1 starts again. I also switched to Linux recently and got to troubleshoot Wakatime for an hour before realizing it just wasn’t installed and I needed more than just the Godot plugin. ( still love it though ) Next time I’m going to make the “Ouchie” text ( see in video ) rotate between a few different passive-aggressive comments , add text inside of the reset button, and fix the button not appearing after the first reset."}, {"post_id": 37417, "ts": "2026-07-30T03:41:24Z", "hours": 1.0375, "text": "I honestly don’t know what in the ever living I was doing in Krita, but I got this sick little animation done😁. Lowkey took a long time, but I’m pretty happy with the final result. Originally, I was going to have both of bob’s hands clutching his chest, but in the midst of drawing them, I realized that they no longer looked like arms lol. Don’t draw both arms of a stick figure clutching its chest, kids."}, {"post_id": 34860, "ts": "2026-07-25T22:11:49Z", "hours": 2.05, "text": "Today was kinda light and a little less complicated. I started off by creating a function that freezes all of the gloinks. Then I messed with tweens for the first time and created the animation you can see in the video. Lastly, I reused some of bob’s old sprites and put Xs over his eyes. Now he can actually die, yay!"}, {"post_id": 33266, "ts": "2026-07-23T01:34:23Z", "hours": 2.1939, "text": "Today I did quite a bit, and I’m very happy with what I got done. I fixed a few bugs, but most notably, I finished all of the waves and made them run consecutively. Next, I’m either going to work on the cutscenes or what happens when the player dies. I might even add a difficulty setting in the future too, who knows?"}, {"post_id": 30513, "ts": "2026-07-18T04:38:48Z", "hours": 2.0064, "text": "Today I started on the wave system and got three of them done. The clip below is each of them. The rest shouldn’t take long and I hope to get them done tomorrow. After that, I have to get them running in succession, but that may happen another day. I would also like peoples’ opinions on whether I should put hard boundary at the edge of the screen or penalize the player for every second they stay outside of the screen. What do you think?"}, {"post_id": 25743, "ts": "2026-07-10T05:38:22Z", "hours": 0.6281, "text": "Today I worked on a little animation for the start of each wave. It took me like an hour and it’s not very complicated. I had a lot of fun making it though and I hope to do some more little animations in the future."}, {"post_id": 21784, "ts": "2026-07-03T21:52:58Z", "hours": 1.0853, "text": "Today I didn’t do too much, but I am happy with what I got done. I got the health bars working on all of the Gloinks, and they should be fully functional now. I also fixed an issue with the bullet direction, where it was heading a little bit left of the mouse. Lastly, I added a few degrees of offset to the direction of the bullet."}, {"post_id": 21289, "ts": "2026-07-03T04:17:37Z", "hours": 1.1308, "text": "Today I mainly worked on getting bob to shoot and those bullets doing damage. Even though the Gloinks don’t have visible health bars yet, they still take damage and are deleted when they take enough damage; Even their projectiles can be killed by the bullet. While writing this I realized that the bullets weren’t being deleted, so I just fixed that. I also fixed an issue where the Pentagon’s projectiles were flying at supersonic speeds. I don’t think I did anything else though, but tomorrow I’ll try to find out why the bullets from bob’s gun aren’t heading straight to the mouse pointer."}, {"post_id": 17350, "ts": "2026-06-28T03:05:00Z", "hours": 1.4908, "text": "Today I worked on collisions and actually having the player take damage. I also created a health bar. Tomorrow I’ll add the health bar to the Gloinks and maybe even make the player’s gun functional."}, {"post_id": 14860, "ts": "2026-06-24T03:58:41Z", "hours": 2.4106, "text": "Yesterday, I got the Heptagon working; however, I couldn’t upload the devlog. I had some issues where when I moved my project from my laptop to my computer, Wakatime thought that I was working on a different project. It’s counting my time correctly now, but I still lost an hour and a half. I submitted a ticket and I hope they get to that soon. Today, I just copied the Hexagon’s code to the Octagon to make it shoot 5 mini gloinks. Tomorrow I’d like to start on the whole health and damage system, but I might take a short 1-day break to avoid losing motivation. If anybody has a similar issue with Wakatime, create a file named exactly “.wakatime-project” (Make sure that you have show file extensions enabled) and put it in your root directory. Then edit the file and make the first line the exact name (You can find this at hackatime.hackclub.com) of the project Wakatime has counted the majority of your time to."}, {"post_id": 13538, "ts": "2026-06-22T04:45:06Z", "hours": 0.7911, "text": "Today I didn’t do too much, but I was able to get the Pentagon working properly and added functionality to the Hexagon. Tomorrow I’ll work on the Heptagon and Octagon, and hopefully, I’ll get both of them done."}, {"post_id": 12926, "ts": "2026-06-21T05:01:43Z", "hours": 3.0122, "text": "Today I got a few things done. First was the “storyline”, in a text file I put together how I wanted the “story” to progress and kinda how the game and menus would be structured. Then I drew sprites for the 6 different enemies: The Triangle, Square, Pentagon, Hexagon, Heptagon, and Octagon (so unique ik). Each enemy is a little different in terms of health, movement speed, and abilities. Today I was able to get the Triangle, Square, Pentagon coded in, however, I have to work out some bugs in the pentagon. Tomorrow I’ll probably just be grinding out programming the rest of the enemies."}, {"post_id": 11523, "ts": "2026-06-18T20:20:59Z", "hours": 1.9808, "text": "Today I did a few things. I started off with finishing the walking animations, you can see them in this video. They took a while but it was fun. Then I worked on the rotating arm. The math was a little difficult so I had Claude explain it to me, but I still wrote it in myself. Lastly, I cleaned up the code a bit. Next time I work on this I’ll add the second arm to the arm sprite and either start working on enemies or make the gun shoot."}, {"post_id": 11094, "ts": "2026-06-18T04:22:24Z", "hours": 0.5808, "text": "Today I created the stick man character and gave him a few animations, most notably, the walking animations. Tomorrow I will clean up some of the animation frames because there are some random pixels in a few as well as drawing walking up and down animations. I’ll probably make him bigger too."}]...
|
Title: ShooterManGame by @RileyTheSane | Stardance Title: ShooterManGame by @RileyTheSane | Stardance
Devlogs:
Today I created the stick man character and gave him a few animations, most notably, the walking animations. Tomorrow I will clean up some of the animation frames because there are some random pixels in a few as well as drawing walking up and down animations. I’ll probably make him bigger too.
Today I did a few things. I started off with finishing the walking animations, you can see them in this video. They took a while but it was fun. Then I worked on the rotating arm. The math was a little difficult so I had Claude explain it to me, but I still wrote it in myself. Lastly, I cleaned up the code a bit. Next time I work on this I’ll add the second arm to the arm sprite and either start working on enemies or make the gun shoot.
Today I got a few things done. First was the “storyline”, in a text file I put together how I wanted the “story” to progress and kinda how the game and menus would be structured. Then I drew sprites for the 6 different enemies: The Triangle, Square, Pentagon, Hexagon, Heptagon, and Octagon (so unique ik). Each enemy is a little different in terms of health, movement speed, and abilities. Today I was able to get the Triangle, Square, Pentagon coded in, however, I have to work out some bugs in the pentagon. Tomorrow I’ll probably just be grinding out programming the rest of the enemies.
Today I didn’t do too much, but I was able to get the Pentagon working properly and added functionality to the Hexagon. Tomorrow I’ll work on the Heptagon and Octagon, and hopefully, I’ll get both of them done.
Yesterday, I got the Heptagon working; however, I couldn’t upload the devlog. I had some issues where when I moved my project from my laptop to my computer, Wakatime thought that I was working on a different project. It’s counting my time correctly now, but I still lost an hour and a half. I submitted a ticket and I hope they get to that soon. Today, I just copied the Hexagon’s code to the Octagon to make it shoot 5 mini gloinks. Tomorrow I’d like to start on the whole health and damage system, but I might take a short 1-day break to avoid losing motivation. If anybody has a similar issue with Wakatime, create a file named exactly “.wakatime-project” (Make sure that you have show file extensions enabled) and put it in your root directory. Then edit the file and make the first line the exact name (You can find this at hackatime.hackclub.com) of the project Wakatime has counted the majority of your time to.
Today I worked on collisions and actually having the player take damage. I also created a health bar. Tomorrow I’ll add the health bar to the Gloinks and maybe even make the player’s gun functional.
Today I mainly worked on getting bob to shoot and those bullets doing damage. Even though the Gloinks don’t have visible health bars yet, they still take damage and are deleted when they take enough damage; Even their projectiles can be killed by the bullet. While writing this I realized that the bullets weren’t being deleted, so I just fixed that. I also fixed an issue where the Pentagon’s projectiles were flying at supersonic speeds. I don’t think I did anything else though, but tomorrow I’ll try to find out why the bullets from bob’s gun aren’t heading straight to the mouse pointer.
Today I didn’t do too much, but I am happy with what I got done. I got the health bars working on all of the Gloinks, and they should be fully functional now. I also fixed an issue with the bullet direction, where it was heading a little bit left of the mouse. Lastly, I added a few degrees of offset to the direction of the bullet.
Today I worked on a little animation for the start of each wave. It took me like an hour and it’s not very complicated. I had a lot of fun making it though and I hope to do some more little animations in the future.
Today I started on the wave system and got three of them done. The clip below is each of them. The rest shouldn’t take long and I hope to get them done tomorrow. After that, I have to get them running in succession, but that may happen another day. I would also like peoples’ opinions on whether I should put hard boundary at the edge of the screen or penalize the player for every second they stay outside of the screen. What do you think?
Today I did quite a bit, and I’m very happy with what I got done. I fixed a few bugs, but most notably, I finished all of the waves and made them run consecutively. Next, I’m either going to work on the cutscenes or what happens when the player dies. I might even add a difficulty setting in the future too, who knows?
Today was kinda light and a little less complicated. I started off by creating a function that freezes all of the gloinks. Then I messed with tweens for the first time and created the animation you can see in the video. Lastly, I reused some of bob’s old sprites and put Xs over his eyes. Now he can actually die, yay!
I honestly don’t know what in the ever living I was doing in Krita, but I got this sick little animation done😁. Lowkey took a long time, but I’m pretty happy with the final result. Originally, I was going to have both of bob’s hands clutching his chest, but in the midst of drawing them, I realized that they no longer looked like arms lol. Don’t draw both arms of a stick figure clutching its chest, kids.
Reset Button + Linux Trouble I made this reset button and it took hella long. I had no idea where to start, and it looks quite out of place because of how 9-piece buttons work. When you press it, the button disappears and the screen fades. After a second, bob fades back into existence, and wave 1 starts again. I also switched to Linux recently and got to troubleshoot Wakatime for an hour before realizing it just wasn’t installed and I needed more than just the Godot plugin. ( still love it though ) Next time I’m going to make the “Ouchie” text ( see in video ) rotate between a few different passive-aggressive comments , add text inside of the reset button, and fix the button not appearing after the first reset.
git commit -m “Fixed bob’s healthbar, fixed button not re-appearing after first retry, gave retry button more wiggly style” best devlog oat? I think I’m gonna replace the passive-aggressive text with a voice-over and start hand-drawing all of the text; bouta suffer and it’s all my own fault🙏.
Started working on hand drawing all of the text, got the wave title and its wiggle done. I will be making the wiggle less severe though.
Finished redesigning the “Wave #” text, and I had to redo the outro animation. I had to find a balance between wiggly and seizure inducing bc the wiggly style is quite violent when scaled up. I might change it later… Does anybody know how to get time recorded with Lapse/Lookout added to your project here on Stardance?
I added fortnite storm but like red⛈️ and : a second larger health bar that appears when you leave the camera view the damage while outside the screen increases by one every time you take storm damage but resets when you re-enter the camera view I do think I went overboard with the vignette; I will probably be dialing it back later
I made the title screem and it works (necessary) also look what I figured out how to do: 🎉 Ⓜ️ ⭕
How do animators do it? I’ve been working on an animation for Bob’s backstory, and I’m losing the desire to ever touch an animation timeline again. I finished all of the animation frames and sound effects, but this isn’t the full thing yet because I’m still putting the entire animation together.
I added a bunch of sound effects, and the game just feels so much better now. After I finish sound effects, I will add a difficulty setting and make some small tweaks before shipping. Shipping feels so close yet so far.
You can now change the difficulty of the game! Below is a little preview of what the different difficulties look like in the last wave, and there is no sound because I forgot to enable it. The next thing I’ll work on is a scoring system. Hopefully I can get that done quickly because it is approaching the deadline yet again....
|
1792792130.2162519
|
1793396930.2162519
|
|
7224
|
Card Game by @sharmnten | Stardance
|
sharmnten
|
1
|
31.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-22T03:36:02Z", "hours": 31.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a game that aimed to be similar to Stardew Valley, but with more of a focus on making it out of debt, similar to the Steam game Gambling With Friends. While this game is not complete, players are able to create a character, explore a small town, and enter a casino, and play “Ride the Bus” on the right hand side of the Casino. I am really proud of the card games, as the animations are really good in my opinion. PS: Poker, on the left hand side of the casino, is entirely broken. DO NOT PLAY POKER or you will have to reload the page.", "repo": "https://github.com/sharmnten/card-game", "demo": "https://sharmnten.github.io/card-game/"}]...
|
[{"post_id": 81692, "ts": "202 [{"post_id": 81692, "ts": "2026-10-22T03:28:56Z", "hours": 0.9194, "text": "Added the UI to every screen, made the game full screen for web, and finally updated the website because I realized it wasn’t updating this whole time, because I hadn’t been pushing new web builds."}, {"post_id": 76567, "ts": "2026-10-03T23:56:12Z", "hours": 3.1072, "text": "Remade casino art, and added limos to the street. Made it so you can enter the casino, and when you exit you spawn in the same spot. Next I need to make the players house and some UI. After that I will work on fixing poker and blackjack, and finalizing the game mechanics."}, {"post_id": 72539, "ts": "2026-09-23T05:06:44Z", "hours": 5.0875, "text": "Worked on the map for the town. This took a really long time, as setting up the autotiling strategies was something I had never done before."}, {"post_id": 68422, "ts": "2026-09-15T02:55:47Z", "hours": 1.9653, "text": "Made it so when you start playing a game, you spawn in the same spot when the game ends."}, {"post_id": 54200, "ts": "2026-08-25T02:47:38Z", "hours": 2.5972, "text": "Created a prompt and system that starts the “Ride the Bus” and “Poker” games. The prompt appears when the player gets close. Additionally, the map of the casino was updated. The background of the camera matches the walls of the casino, so it appears there is nothing beyond the walls of the casino. Next will be making the money in card games link to the casino scene."}, {"post_id": 41134, "ts": "2026-08-05T04:36:14Z", "hours": 2.3386, "text": "Built out tilemap and configured tiles which is really tedious because I have to configure hitboxes and paint the tiles into place. A problem im having is that the foreground elements are not being ordered correctly with the player."}, {"post_id": 35046, "ts": "2026-07-26T06:42:34Z", "hours": 0.8406, "text": "Added walk animations to every single asset. Next step is to script the walk animations into place, so each animation plays at the right time, and the assets get mirrored at the right time as well."}, {"post_id": 34300, "ts": "2026-07-24T21:46:10Z", "hours": 2.2667, "text": "Started the character customizing screen, and wrote the code that allows the player to adjust the character sprite to their liking. Once this is finished, I will create a system that allows it to be saved into the game save file, and then I will have to create the rest of the animations. Then afterwards I will develop the map and the game will be almost complete."}, {"post_id": 23268, "ts": "2026-07-06T03:43:38Z", "hours": 0.9794, "text": "Created a new system for character animations where each clothing piece has a dedicated Animation Resource file. This will allow easier animation management when the user creates a custom character. Additionally, I created the police hat animations(this didn’t contribute to the time, but also is important)."}, {"post_id": 20877, "ts": "2026-07-02T16:24:42Z", "hours": 0.4219, "text": "Started setting up the player animations. It is rather tedious as I need to create idle animations for each character hair, body, shirt, and pants and shadow, but this will later allow for more customizability of the character. I will also need to create a police hat for the IRS officers, but that will come later."}, {"post_id": 20589, "ts": "2026-07-02T06:32:02Z", "hours": 1.1778, "text": "Finished the Ride the Bus card game. Turn four involved guessing which suite the next card will be for 20x multiplier. Wrote 8 new functions, overall the first card game being finished is a solid landmark for the project. In the future I will either continue to develop the other card games and possibly roulette, or I might move to character movement and map design."}, {"post_id": 5635, "ts": "2026-06-09T14:40:57Z", "hours": 5.8906, "text": "Worked a ton on a new card game I am adding, called ride the bus. Animations have been added to card dealing, so the card now smoothly tweens over and then flips over to show the face. I also updated poker so that way the game starts, takes the bet amount, and then deals cards to the player and dealer. Additionally, I created a chip scene that can be used in all the games to approximate the amount of money that is on the table."}, {"post_id": 2524, "ts": "2026-06-05T01:53:16Z", "hours": 1.0033, "text": "Got the dealing mechanism to work. Now, when the “check” button is pressed, a card comes from the deck, and goes to the players hand. This is just for testing, the real game cards will be dealt automatically."}, {"post_id": 2134, "ts": "2026-06-04T13:48:12Z", "hours": 2.2475, "text": "Made setup for poker game and blackjack game, with intial UI layout. Took sprites from Itch.io to use in the game. I took way to long making sure everything was perfectly centered, because it was annoying me. Started making a card class."}]...
|
Title: Card Game by @sharmnten | Stardance
Devlog Title: Card Game by @sharmnten | Stardance
Devlogs:
Made setup for poker game and blackjack game, with intial UI layout. Took sprites from Itch.io to use in the game. I took way to long making sure everything was perfectly centered, because it was annoying me. Started making a card class.
Got the dealing mechanism to work. Now, when the “check” button is pressed, a card comes from the deck, and goes to the players hand. This is just for testing, the real game cards will be dealt automatically.
Worked a ton on a new card game I am adding, called ride the bus. Animations have been added to card dealing, so the card now smoothly tweens over and then flips over to show the face. I also updated poker so that way the game starts, takes the bet amount, and then deals cards to the player and dealer. Additionally, I created a chip scene that can be used in all the games to approximate the amount of money that is on the table.
Finished the Ride the Bus card game. Turn four involved guessing which suite the next card will be for 20x multiplier. Wrote 8 new functions, overall the first card game being finished is a solid landmark for the project. In the future I will either continue to develop the other card games and possibly roulette, or I might move to character movement and map design.
Started setting up the player animations. It is rather tedious as I need to create idle animations for each character hair, body, shirt, and pants and shadow, but this will later allow for more customizability of the character. I will also need to create a police hat for the IRS officers, but that will come later.
Created a new system for character animations where each clothing piece has a dedicated Animation Resource file. This will allow easier animation management when the user creates a custom character. Additionally, I created the police hat animations(this didn’t contribute to the time, but also is important).
Started the character customizing screen, and wrote the code that allows the player to adjust the character sprite to their liking. Once this is finished, I will create a system that allows it to be saved into the game save file, and then I will have to create the rest of the animations. Then afterwards I will develop the map and the game will be almost complete.
Added walk animations to every single asset. Next step is to script the walk animations into place, so each animation plays at the right time, and the assets get mirrored at the right time as well.
Built out tilemap and configured tiles which is really tedious because I have to configure hitboxes and paint the tiles into place. A problem im having is that the foreground elements are not being ordered correctly with the player.
Created a prompt and system that starts the “Ride the Bus” and “Poker” games. The prompt appears when the player gets close. Additionally, the map of the casino was updated. The background of the camera matches the walls of the casino, so it appears there is nothing beyond the walls of the casino. Next will be making the money in card games link to the casino scene.
Made it so when you start playing a game, you spawn in the same spot when the game ends.
Worked on the map for the town. This took a really long time, as setting up the autotiling strategies was something I had never done before.
Remade casino art, and added limos to the street. Made it so you can enter the casino, and when you exit you spawn in the same spot. Next I need to make the players house and some UI. After that I will work on fixing poker and blackjack, and finalizing the game mechanics.
Added the UI to every screen, made the game full screen for web, and finally updated the website because I realized it wasn’t updating this whole time, because I hadn’t been pushing new web builds.
Ships:
I made a game that aimed to be similar to Stardew Valley, but with more of a focus on making it out of debt, similar to the Steam game Gambling With Friends. While this game is not complete, players are able to create a character, explore a small town, and enter a casino, and play “Ride the Bus” on the right hand side of the Casino. I am really proud of the card games, as the animations are really good in my opinion. PS: Poker, on the left hand side of the casino, is entirely broken. DO NOT PLAY POKER or you will have to reload the page....
|
1792644759.4949157
|
1792731159.4949157
|
|
1220
|
Cobble by @world | Stardance
|
world
|
0
|
85.79
|
0
|
[]
|
[{"post_id": 81702, "ts": "202 [{"post_id": 81702, "ts": "2026-10-22T04:37:51Z", "hours": 10.7958, "text": "v0.10.0 - for Minecraft Java Edition 26.3 And lots of bug fix, irl usage case examples!"}, {"post_id": 45628, "ts": "2026-08-12T07:44:56Z", "hours": 44.2856, "text": "v0.9.0 - for Minecraft Java Edition 26.1.2! Some stdlib improvement Many experimental features I’m working on the real use case-side at now"}, {"post_id": 2166, "ts": "2026-06-04T14:45:00Z", "hours": 6.0519, "text": "v0.7.0 Release! Lots of QA Almost-fully stabilized version! See cobble language spec: https://github.com/deveworld/cobble/blob/main/docs/language.md"}, {"post_id": 1551, "ts": "2026-06-03T17:17:46Z", "hours": 11.1644, "text": "Been a while. We have new release candidate of v0.7.0 Lots of fixeas, and features Enjoy!"}, {"post_id": 881, "ts": "2026-06-02T16:35:33Z", "hours": 3.8467, "text": "Cobble v0.6.3 release 0.6.3: Stabilization And Test Depth Improve regression coverage around generated output. Convert recent release QA procedures into repeatable tests where practical. Harden command-tree cache behavior and diagnostics. New CLI command: cobble doctor, cobble inspect … etc We have nice real-time demo compile site!"}, {"post_id": 761, "ts": "2026-06-02T12:24:43Z", "hours": 7.5256, "text": "https://deveworld.github.io/cobble/ Online Demo Website!"}, {"post_id": 611, "ts": "2026-06-02T03:30:02Z", "hours": 2.1153, "text": "Devlog: Cobble v0.6.1 Cobble v0.6.1 is focused on making Minecraft data pack development more reliable, more current, and easier to validate. This release targets Minecraft Java Edition 26.1.2 and pack format 101.1, giving the compiler a clear modern baseline instead of trying to support older command formats. The biggest improvement is validation. Cobble can now automatically generate the default data/commands.json by downloading the Minecraft server through Mojang’s version manifest and running the server reports generator. It also supports fallback URLs, custom server jars, and SHA1 checks for more controlled environments. This makes command validation much easier to run consistently. We also improved diagnostics, source-map validation, and generated pack cleanup, especially around safer resource paths and stale generated functions. Standard library helpers were expanded, namespaced data pack resources are better supported, and the example projects now cover more real features. Finally, v0.6.1 adds a repeatable Purpur server QA workflow, so generated packs can be tested beyond static validation. Overall, this release is about confidence: clearer errors, stronger checks, and a better foundation for future Cobble releases."}]...
|
Title: Cobble by @world | Stardance
Devlogs:
Devl Title: Cobble by @world | Stardance
Devlogs:
Devlog: Cobble v0.6.1 Cobble v0.6.1 is focused on making Minecraft data pack development more reliable, more current, and easier to validate. This release targets Minecraft Java Edition 26.1.2 and pack format 101.1, giving the compiler a clear modern baseline instead of trying to support older command formats. The biggest improvement is validation. Cobble can now automatically generate the default data/commands.json by downloading the Minecraft server through Mojang’s version manifest and running the server reports generator. It also supports fallback URLs, custom server jars, and SHA1 checks for more controlled environments. This makes command validation much easier to run consistently. We also improved diagnostics, source-map validation, and generated pack cleanup, especially around safer resource paths and stale generated functions. Standard library helpers were expanded, namespaced data pack resources are better supported, and the example projects now cover more real features. Finally, v0.6.1 adds a repeatable Purpur server QA workflow, so generated packs can be tested beyond static validation. Overall, this release is about confidence: clearer errors, stronger checks, and a better foundation for future Cobble releases.
https://deveworld.github.io/cobble/ Online Demo Website!
Cobble v0.6.3 release 0.6.3: Stabilization And Test Depth Improve regression coverage around generated output. Convert recent release QA procedures into repeatable tests where practical. Harden command-tree cache behavior and diagnostics. New CLI command: cobble doctor, cobble inspect … etc We have nice real-time demo compile site!
Been a while. We have new release candidate of v0.7.0 Lots of fixeas, and features Enjoy!
v0.7.0 Release! Lots of QA Almost-fully stabilized version! See cobble language spec: https://github.com/deveworld/cobble/blob/main/docs/language.md
v0.9.0 - for Minecraft Java Edition 26.1.2! Some stdlib improvement Many experimental features I’m working on the real use case-side at now
v0.10.0 - for Minecraft Java Edition 26.3 And lots of bug fix, irl usage case examples!...
|
1792677259.6408203
|
1793282059.6408203
|
|
16872
|
TCG Tycoon Slack Bot by @Veeraj | Stardance
|
Veeraj
|
1
|
2.0
|
3
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-13T17:20:23Z", "hours": 2.0, "multiplier": 1.55, "payout": 3, "blessing": "neutral", "text": "I made a slackbot that allows you to play a tycoon game with the use of one command. I found a lot of things challenging as it was my first time. The main thing was understanding terminal commands and understanding how to install the software. It was confusing at first but as I did more I started to get the hang of it. I am really proud of the tournament feature and hope you enjoy it as much as I did.", "repo": "https://github.com/Octolord12/waddle-tcg-tycoon", "demo": "https://app.slack.com/client/E09V59WQY1E/C0BAWSLDY83"}]...
|
[{"post_id": 8171, "ts": "2026 [{"post_id": 8171, "ts": "2026-06-13T16:50:02Z", "hours": 1.7956, "text": "Version 1.2 added features such as gradable cards, player to player trading and a highly volatile tournament system. The screenshot is the grading system."}]...
|
Title: TCG Tycoon Slack Bot by @Veeraj | Stardance Title: TCG Tycoon Slack Bot by @Veeraj | Stardance
Devlogs:
Version 1.2 added features such as gradable cards, player to player trading and a highly volatile tournament system. The screenshot is the grading system.
Ships:
I made a slackbot that allows you to play a tycoon game with the use of one command. I found a lot of things challenging as it was my first time. The main thing was understanding terminal commands and understanding how to install the software. It was confusing at first but as I did more I started to get the hang of it. I am really proud of the tournament feature and hope you enjoy it as much as I did....
|
1792842867.5952694
|
1792929267.5952694
|
|
40024
|
My very own WebOS by @Vestige | Stardance
|
Vestige
|
1
|
18.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-22T06:52:47Z", "hours": 18.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a Web OS. A top status bar tracks a localized clock, the system name, and a banner reading “You learn something new everyday!”. On the left side of the screen, desktop shortcuts for “Notes” and “Fortfact” sit next to an open, stylized “Welcome” window that explains the system’s core capabilities. In the bottom right corner, a window states that the environment has initialized successfully. At the start getting the features up and running was challenging but over time as I progressed and got used to it I was able to get it up and running and add new features and code freely without needing too much help. I am proud that I have built this because I have never done coding a web page before and it was a wonderful experience. But, if you asked me for one thing in my Web OS that I am especially proud of I would say that would be my notes app because I am so happy with how I built it so far and the new features I added to it that makes it uniquely mine. Along the way I accomplished stuff and improved stuff but I also ran into errors and problems in my code which was frustrating and sometimes shocking because I had expected it to work. To test my project you can just click the link I have put in or click the link I have put in my ReadMe and it launches directly from there, no extra steps!", "repo": "https://github.com/Hi-G-max/WebOS1", "demo": "https://hi-g-max.github.io/WebOS1/"}]...
|
[{"post_id": 81711, "ts": "202 [{"post_id": 81711, "ts": "2026-10-22T05:45:56Z", "hours": 0.7956, "text": "Progress, Polishing, and a Sudden Deployment Scare! Hey everyone! Since I wasn’t able to write much in my last devlog—because I was low on time and only posted a few sentences as a summary—I’ve decided to write more this time. I’ve been chipping away at the Fortfact app and just pushed some fun updates. I’ve expanded the pool of content with a handful of brand-new facts and fortunes for you to discover, and I also refreshed the text in the welcome box to make it a bit more inviting. I also gave the UI a little makeover—I shrunk the welcome window’s overall size so it feels less intrusive, and tucked it neatly into the bottom-right corner of the screen and changed the text inside it. Behind the scenes, I also took some time to dive into the codebase and refine a few areas that felt a bit rushed and messy during the initial build. It wasn’t all smooth sailing, though. I ran into a massive roadblock trying to deploy to GitHub Pages. For a moment, everything broke and it gave me quite a shock! It took a solid chunk of troubleshooting time, but I managed to untangle the issue and get everything live."}, {"post_id": 80921, "ts": "2026-10-19T07:58:34Z", "hours": 2.6297, "text": "I added a new app that gives you a fortune or fact and i refined the code in places."}, {"post_id": 64097, "ts": "2026-09-08T08:57:54Z", "hours": 7.5708, "text": "ok, so i ran into a few bugs when i was doing this and it took me a surprising amount of time to fix it but finally I fixed it! yay for me! anyway, after that i put in a few more additions to my notes app, like putting in buttons to open a brand new note or delete one or to save your current note."}, {"post_id": 49422, "ts": "2026-08-18T08:02:12Z", "hours": 4.7342, "text": "I’ve created the first app!!! and I’ve added detail to it : letting you open it , close it, edit it, move it and resize it! I’ve put some base text into it but the user can change that text or add to it. Next I’m going to learn and develop this wonderful thing more!"}, {"post_id": 37478, "ts": "2026-07-30T08:00:14Z", "hours": 2.5747, "text": "I’ve been working on the welcome page .It took me some time to get it working right, and I’ve finally got it to . I’ve put an image as the background and also have done a simple message. I have just finished doing the top bar (with a clock) as well as a draggable window."}]...
|
Title: My very own WebOS by @Vestige | Stardance
Title: My very own WebOS by @Vestige | Stardance
Devlogs:
I’ve been working on the welcome page .It took me some time to get it working right, and I’ve finally got it to . I’ve put an image as the background and also have done a simple message. I have just finished doing the top bar (with a clock) as well as a draggable window.
I’ve created the first app!!! and I’ve added detail to it : letting you open it , close it, edit it, move it and resize it! I’ve put some base text into it but the user can change that text or add to it. Next I’m going to learn and develop this wonderful thing more!
ok, so i ran into a few bugs when i was doing this and it took me a surprising amount of time to fix it but finally I fixed it! yay for me! anyway, after that i put in a few more additions to my notes app, like putting in buttons to open a brand new note or delete one or to save your current note.
I added a new app that gives you a fortune or fact and i refined the code in places.
Progress, Polishing, and a Sudden Deployment Scare! Hey everyone! Since I wasn’t able to write much in my last devlog—because I was low on time and only posted a few sentences as a summary—I’ve decided to write more this time. I’ve been chipping away at the Fortfact app and just pushed some fun updates. I’ve expanded the pool of content with a handful of brand-new facts and fortunes for you to discover, and I also refreshed the text in the welcome box to make it a bit more inviting. I also gave the UI a little makeover—I shrunk the welcome window’s overall size so it feels less intrusive, and tucked it neatly into the bottom-right corner of the screen and changed the text inside it. Behind the scenes, I also took some time to dive into the codebase and refine a few areas that felt a bit rushed and messy during the initial build. It wasn’t all smooth sailing, though. I ran into a massive roadblock trying to deploy to GitHub Pages. For a moment, everything broke and it gave me quite a shock! It took a solid chunk of troubleshooting time, but I managed to untangle the issue and get everything live.
Ships:
I made a Web OS. A top status bar tracks a localized clock, the system name, and a banner reading “You learn something new everyday!”. On the left side of the screen, desktop shortcuts for “Notes” and “Fortfact” sit next to an open, stylized “Welcome” window that explains the system’s core capabilities. In the bottom right corner, a window states that the environment has initialized successfully. At the start getting the features up and running was challenging but over time as I progressed and got used to it I was able to get it up and running and add new features and code freely without needing too much help. I am proud that I have built this because I have never done coding a web page before and it was a wonderful experience. But, if you asked me for one thing in my Web OS that I am especially proud of I would say that would be my notes app because I am so happy with how I built it so far and the new features I added to it that makes it uniquely mine. Along the way I accomplished stuff and improved stuff but I also ran into errors and problems in my code which was frustrating and sometimes shocking because I had expected it to work. To test my project you can just click the link I have put in or click the link I have put in my ReadMe and it launches directly from there, no extra steps!...
|
1792676857.596387
|
1792763257.596387
|
|
35980
|
My personal site! by @Shreiyaan_Parin_Shah | Stard My personal site! by @Shreiyaan_Parin_Shah | Stardance...
|
Shreiyaan_Parin_Shah
|
1
|
15.64
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-28T07:29:15Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a personal site that contains information about me, my projects that I will add soon and my achievements as well. The part that was actually challenging was getting the code correct and not messing up the color, font, style and everything else included. But finally, I am proud of it’s outcome. This is my first project and I am excited to do more.", "repo": "https://github.com/Shreiyaan/personal-site", "demo": "https://shreiyaan.github.io/personal-site/"}]...
|
[{"post_id": 81714, "ts": "202 [{"post_id": 81714, "ts": "2026-10-22T06:05:28Z", "hours": 0.8228, "text": "I added more uniqueness to my website and here is the outcome. This is my completely personalized website."}, {"post_id": 81700, "ts": "2026-10-22T04:20:52Z", "hours": 3.46, "text": "As mentioned before, there are always corrections to make. So this time, i thought, why not start the entire thing once again from scratch. This is my progress so far. I am a huge fan of Thor, hence the background. The website is not done yet. Have to make a lot of changes and also, have to bring in some of my pictures! I am trying to make it as unique as possible. Yet have to work on it."}, {"post_id": 76364, "ts": "2026-10-03T09:54:47Z", "hours": 4.3561, "text": "I had spent hours behind my previous website, but naturally, there are always more corrections to make. But this time, it wasn’t only a correction. It was s restructure. A complete transformation. I have completed changed the outlook of my personal website, and I just have to make a few more edits before it can go live. Excited on how it is coming out to be!!!"}, {"post_id": 36253, "ts": "2026-07-28T07:20:36Z", "hours": 2.105, "text": "Hello everyone! The site is finally completely finished and all the features are finally working. When I first started working on this for Hack Club, I honestly wasn’t sure how it was going to turn out, but I’m super proud of the final result. Getting everything from a blank screen to a fully working, polished website took way more trial and error than expected, especially trying to get the styling and code structure right without it becoming a total mess. But after grinding through the bugs and finishing up the last few details, it’s finally ready to ship."}, {"post_id": 31794, "ts": "2026-07-20T13:54:17Z", "hours": 5.3539, "text": "After immense hard work and grinding - here is my personal site. This is a culmination of tremendous hours of coding and learning. However intense the hardwork, this process truly taught me a lot. Looking forward for more"}]...
|
Title: My personal site! by @Shreiyaan_Parin_Shah Title: My personal site! by @Shreiyaan_Parin_Shah | Stardance
Devlogs:
After immense hard work and grinding - here is my personal site. This is a culmination of tremendous hours of coding and learning. However intense the hardwork, this process truly taught me a lot. Looking forward for more
Hello everyone! The site is finally completely finished and all the features are finally working. When I first started working on this for Hack Club, I honestly wasn’t sure how it was going to turn out, but I’m super proud of the final result. Getting everything from a blank screen to a fully working, polished website took way more trial and error than expected, especially trying to get the styling and code structure right without it becoming a total mess. But after grinding through the bugs and finishing up the last few details, it’s finally ready to ship.
I had spent hours behind my previous website, but naturally, there are always more corrections to make. But this time, it wasn’t only a correction. It was s restructure. A complete transformation. I have completed changed the outlook of my personal website, and I just have to make a few more edits before it can go live. Excited on how it is coming out to be!!!
As mentioned before, there are always corrections to make. So this time, i thought, why not start the entire thing once again from scratch. This is my progress so far. I am a huge fan of Thor, hence the background. The website is not done yet. Have to make a lot of changes and also, have to bring in some of my pictures! I am trying to make it as unique as possible. Yet have to work on it.
I added more uniqueness to my website and here is the outcome. This is my completely personalized website.
Ships:
I made a personal site that contains information about me, my projects that I will add soon and my achievements as well. The part that was actually challenging was getting the code correct and not messing up the color, font, style and everything else included. But finally, I am proud of it’s outcome. This is my first project and I am excited to do more....
|
1792849663.889233
|
1792936063.889233
|
|
56164
|
Papyrus by @steve_alappat | Stardance
|
steve_alappat
|
0
|
13.72
|
0
|
[]
|
[{"post_id": 81717, "ts": "202 [{"post_id": 81717, "ts": "2026-10-22T06:45:40Z", "hours": 6.4361, "text": "YO GUESS WHO’S BACK? I had way too much sugar. Back to the project. I’ve finally set up the review process, admin functionality, and the entire end-to-end data pipeline. The project is starting to feel like a proper, mostly* finished product. Before diving into the details of what I’ve accomplished, here’s what’s left to do. Work LEft Implement proper admin dashboard statistics to give admins useful insights into the platform. Find and implement a PDF preview solution so users can preview files before downloading them. Polish the UI and styling across every page to make the entire platform feel more consistent and beautiful. Improve admin functionality by adding more tools and controls to make the admin panel genuinely useful. What I Accomplished in the Last 6 Hours Built the complete file upload pipeline. Files can now be uploaded, stored, and inserted into the database. After going through the review process, approved files are displayed on the frontend and can be downloaded by users. Implemented the review and approval system. Admins can quickly review submitted resources and approve them before they become available to users. Improved the admin panel. I’ve added more functionality, but there’s still a long way to go before it becomes a fully functional administration dashboard. Added download tracking. Each file now has its own download counter, allowing the platform to track how many times individual resources have been downloaded. So untill next time, all the best and Happy hacking! P.S: the attached photo is the current state of the admin dashboard"}, {"post_id": 78705, "ts": "2026-10-11T11:15:46Z", "hours": 7.2875, "text": "Hi guys! Welcome to my new project Papyrus!This project is a web application to allow students to easily access and share exam papers and materials. The goal is to create a centralized platform where students can find the resources they need to prepare for their exams effectively.The inspiration for this project came from my own experience as a student; I found that that the practise of a large number of papers was one of the most influential factors in my preparation for exams. However, I also found that the availability of these papers was limited and often scattered across various sources. My friends and I would spend a lot of time searching for the papers we needed, which was frustrating and time-consuming. Thus, I decided to create this project to remove that friction for future students and make it easier for them to access the resources they need.But thats enough about me, lets talk about the project itself. The project is built using Next.js, which allows for a seamless integration of frontend and backend functionality. The frontend is built using React components, while the backend handles API requests and data management. The main database is made using SQLite, and the schema is defined in lib/schema.ts .the project has 3 main divisons, The front, the server and a admin panel. The front is the main website where students can browse and search for papers, as well as upload their own papers for review. The server handles all the backend functionality, including API requests and data management. The admin panel is where the review process takes place, allowing admins to review and approve submitted papers before they are added to the archive.As of today im almost at the end of the project possibly, right now i need to setup the review process, the data pipe level and make the admin panel functionalAlso my ai declaration: I and used ai to make the bulk parts of the code, but i have had to go through each line my self due to the slop nature of the ai code, and no ai was used to make the documentation and logic or data flows anything, i used ai mostly for the styling part. ps the screenshot is the homepage of the website as of now"}]...
|
Title: Papyrus by @steve_alappat | Stardance
Devl Title: Papyrus by @steve_alappat | Stardance
Devlogs:
Hi guys! Welcome to my new project Papyrus!This project is a web application to allow students to easily access and share exam papers and materials. The goal is to create a centralized platform where students can find the resources they need to prepare for their exams effectively.The inspiration for this project came from my own experience as a student; I found that that the practise of a large number of papers was one of the most influential factors in my preparation for exams. However, I also found that the availability of these papers was limited and often scattered across various sources. My friends and I would spend a lot of time searching for the papers we needed, which was frustrating and time-consuming. Thus, I decided to create this project to remove that friction for future students and make it easier for them to access the resources they need.But thats enough about me, lets talk about the project itself. The project is built using Next.js, which allows for a seamless integration of frontend and backend functionality. The frontend is built using React components, while the backend handles API requests and data management. The main database is made using SQLite, and the schema is defined in lib/schema.ts .the project has 3 main divisons, The front, the server and a admin panel. The front is the main website where students can browse and search for papers, as well as upload their own papers for review. The server handles all the backend functionality, including API requests and data management. The admin panel is where the review process takes place, allowing admins to review and approve submitted papers before they are added to the archive.As of today im almost at the end of the project possibly, right now i need to setup the review process, the data pipe level and make the admin panel functionalAlso my ai declaration: I and used ai to make the bulk parts of the code, but i have had to go through each line my self due to the slop nature of the ai code, and no ai was used to make the documentation and logic or data flows anything, i used ai mostly for the styling part. ps the screenshot is the homepage of the website as of now
YO GUESS WHO’S BACK? I had way too much sugar. Back to the project. I’ve finally set up the review process, admin functionality, and the entire end-to-end data pipeline. The project is starting to feel like a proper, mostly* finished product. Before diving into the details of what I’ve accomplished, here’s what’s left to do. Work LEft Implement proper admin dashboard statistics to give admins useful insights into the platform. Find and implement a PDF preview solution so users can preview files before downloading them. Polish the UI and styling across every page to make the entire platform feel more consistent and beautiful. Improve admin functionality by adding more tools and controls to make the admin panel genuinely useful. What I Accomplished in the Last 6 Hours Built the complete file upload pipeline. Files can now be uploaded, stored, and inserted into the database. After going through the review process, approved files are displayed on the frontend and can be downloaded by users. Implemented the review and approval system. Admins can quickly review submitted resources and approve them before they become available to users. Improved the admin panel. I’ve added more functionality, but there’s still a long way to go before it becomes a fully functional administration dashboard. Added download tracking. Each file now has its own download counter, allowing the platform to track how many times individual resources have been downloaded. So untill next time, all the best and Happy hacking! P.S: the attached photo is the current state of the admin dashboard...
|
1792651748.2655246
|
1793256548.2655246
|
|
68199
|
CurtainsOS by @zac_i | Stardance
|
zac_i
|
2
|
12.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-22T07:44:56Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "CurtainsOS SHIP #2!!!! New features: Fullscreen option Window open/close animations Terminal app with a bunch of prank and basic commands Settings app with custom background image, and curtain animation toggle. Saved to localStorage Saved notes Saved window positions and states Simple weather app using OpenMeteo API Nice fade-in transition to dull the CSS-load flash Challenges Getting the custom uploaded background image to save was tricky, but I got it to work with localStorage in the end. Weather from the OpenMeteo API was a little bit hard, but my good pal google helped me out. ;D", "repo": "https://github.com/zacianculovici/CurtainsOS", "demo": "https://zacianculovici.github.io/CurtainsOS"}, {"ship_num": 2, "ts": "2026-10-15T09:15:46Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "My WebOS is inspired as a pun on Windows, hence CurtainsOS. I Implemented features such as a calculator, notes app and goto app, and multiple easter eggs. I used custom HTMLElements to make adding new windows easy, and put most of my css separately to clear up my html.", "repo": "https://github.com/zacianculovici/CurtainsOS", "demo": "https://zacianculovici.github.io/CurtainsOS"}]...
|
[{"post_id": 81724, "ts": "202 [{"post_id": 81724, "ts": "2026-10-22T07:21:35Z", "hours": 0.3256, "text": "Devlog #6* for CurtainsOS Fullscreen windows! All I’ve added since my last devlog is the ability to put windows in fullscreen! It has a nice green button with icons and it blocks resizing so you don’t break the window size in fullscreen mode! Check it out here ! More like Devlog #5.5…"}, {"post_id": 81707, "ts": "2026-10-22T05:19:18Z", "hours": 2.0531, "text": "Devlog #5 for CurtainsOS! Added so many terminal features I have added lots of random and prank terminal commands, check them out here with the help command!"}, {"post_id": 81190, "ts": "2026-10-20T07:27:32Z", "hours": 2.6722, "text": "OMG!!! DEVLOG #4 OF CurtainsOS !!! Added Features I have added: A settings window with saved settings, animation toggle and custom background image upload (also saved) A weather app with very simple temperature and weather remark at your location from OpenMeteo Notes are saved to localStorage Window positions and states are saved to localStorage , meaning you keep your open windows on reload Nice fade-in transition to dull the CSS-load flashing. Challenges Custom background image: It was a bit hard to get the background images to save, but I ended up saving them to localStorage as a data: URL Weather: It was slightly difficult to figure out how to ping the OpenMeteo API, but I got it to work after a bit of googling and testing CHECK IT OUT!!!"}, {"post_id": 79755, "ts": "2026-10-15T08:57:07Z", "hours": 4.0625, "text": "Devlog #3 of CurtainsOS ! Added sooo much! (I should have devlogged sooner 😭) Added: Custom HTMLElements ( <app-window> s) to make the adding of windows easy-peasy Calculator and goto apps A couple easter eggs (see if you can find them!) Problems I had quite a bit of trouble with the HTMLElements as all this shadowDOM stuff is sooo confusing! However, I am glad I did because it is now so much easier for future (and WebOS 2…) ! Also, it then mucked up my dragging and closing/opening so I was like * mortified-scream * ! But it’s fixed and I’m happy with it now. Will probably ship next!!!"}, {"post_id": 78975, "ts": "2026-10-12T07:27:54Z", "hours": 1.8153, "text": "Devlog #2 of CurtainsOS! Just made things look a little nicer and made the dragging/resising work properly Site is live!"}, {"post_id": 78930, "ts": "2026-10-12T02:24:34Z", "hours": 1.0522, "text": "First devlog of CurtainsOS! “ This is CurtainsOS! A pun on Windows, with lot’s of cool features such as curtain animations and other easter eggs. ” YESSSS!!! I’m nearly done a first draft with a couple windows. Also… There might be a cool curtain animation effect…"}]...
|
Title: CurtainsOS by @zac_i | Stardance
Devlogs:
Title: CurtainsOS by @zac_i | Stardance
Devlogs:
First devlog of CurtainsOS! “ This is CurtainsOS! A pun on Windows, with lot’s of cool features such as curtain animations and other easter eggs. ” YESSSS!!! I’m nearly done a first draft with a couple windows. Also… There might be a cool curtain animation effect…
Devlog #2 of CurtainsOS! Just made things look a little nicer and made the dragging/resising work properly Site is live!
Devlog #3 of CurtainsOS ! Added sooo much! (I should have devlogged sooner 😭) Added: Custom HTMLElements ( <app-window> s) to make the adding of windows easy-peasy Calculator and goto apps A couple easter eggs (see if you can find them!) Problems I had quite a bit of trouble with the HTMLElements as all this shadowDOM stuff is sooo confusing! However, I am glad I did because it is now so much easier for future (and WebOS 2…) ! Also, it then mucked up my dragging and closing/opening so I was like * mortified-scream * ! But it’s fixed and I’m happy with it now. Will probably ship next!!!
OMG!!! DEVLOG #4 OF CurtainsOS !!! Added Features I have added: A settings window with saved settings, animation toggle and custom background image upload (also saved) A weather app with very simple temperature and weather remark at your location from OpenMeteo Notes are saved to localStorage Window positions and states are saved to localStorage , meaning you keep your open windows on reload Nice fade-in transition to dull the CSS-load flashing. Challenges Custom background image: It was a bit hard to get the background images to save, but I ended up saving them to localStorage as a data: URL Weather: It was slightly difficult to figure out how to ping the OpenMeteo API, but I got it to work after a bit of googling and testing CHECK IT OUT!!!
Devlog #5 for CurtainsOS! Added so many terminal features I have added lots of random and prank terminal commands, check them out here with the help command!
Devlog #6* for CurtainsOS Fullscreen windows! All I’ve added since my last devlog is the ability to put windows in fullscreen! It has a nice green button with icons and it blocks resizing so you don’t break the window size in fullscreen mode! Check it out here ! More like Devlog #5.5…
Ships:
My WebOS is inspired as a pun on Windows, hence CurtainsOS. I Implemented features such as a calculator, notes app and goto app, and multiple easter eggs. I used custom HTMLElements to make adding new windows easy, and put most of my css separately to clear up my html.
CurtainsOS SHIP #2!!!! New features: Fullscreen option Window open/close animations Terminal app with a bunch of prank and basic commands Settings app with custom background image, and curtain animation toggle. Saved to localStorage Saved notes Saved window positions and states Simple weather app using OpenMeteo API Nice fade-in transition to dull the CSS-load flash Challenges Getting the custom uploaded background image to save was tricky, but I got it to work with localStorage in the end. Weather from the OpenMeteo API was a little bit hard, but my good pal google helped me out. ;D...
|
1792857191.6502962
|
1792943591.6502962
|
|
70896
|
My very own WebOS by @xzenxhunter | Stardance
|
xzenxhunter
|
0
|
0.31
|
0
|
[]
|
[{"post_id": 81727, "ts": "202 [{"post_id": 81727, "ts": "2026-10-22T07:33:17Z", "hours": 0.3122, "text": "i added an welcome page"}]...
|
Title: My very own WebOS by @xzenxhunter | Stardan Title: My very own WebOS by @xzenxhunter | Stardance
Devlogs:
i added an welcome page...
|
1792655241.3054972
|
1793260041.3054972
|
|
22433
|
Semicolonless C Compiler by @lilyy | Stardance
|
lilyy
|
0
|
5.21
|
0
|
[]
|
[{"post_id": 81731, "ts": "202 [{"post_id": 81731, "ts": "2026-10-22T08:07:07Z", "hours": 0.7861, "text": "fixed some bugs and polished it, all tests now pass there was also a memory leak thing i found while running the tests commits since the last devlog 1223cf6 fixed a memory leak and some bugs b2098bb Document the examples in the README 8a45dbb Make the examples SLCC styled 82d63fa Fix typos in the README"}, {"post_id": 38055, "ts": "2026-07-31T07:34:57Z", "hours": 3.2833, "text": "add python style indenting now this is valid code: #include <stdio.h> int main () : float a , b int c float cache = 1 printf ( \"Input some numbers: \" ) if ( scanf ( \"%f %f %d\" , & a , & b , & c ) != 3 ) : printf ( \"Invalid input. \\n \" ) return 1 printf ( \" \\n \" ) if ( b == 0 ) : printf ( \"b is zero \\n \" ) else : printf ( \"%f/%f = %f \\n \" , a , b , a / b ) if ( c >= 0 ) : for ( int i = 0 i > c i ++ ) : cache *= a printf ( \"%f^%d = %f \\n \" , a , c , cache ) else : printf ( \"c is negative \\n \" ) return 0 yeah this is so cursed. this is the output of the code:"}, {"post_id": 12447, "ts": "2026-06-20T09:41:35Z", "hours": 0.7169, "text": "upload to github, change the name, fix help, add README, and fix tests all tests pass! Changelog Add README and fix tests Change the name to slcc"}, {"post_id": 11981, "ts": "2026-06-19T15:38:02Z", "hours": 0.4283, "text": "made the initial version this is so cursed changelog Fix structs remove semicolons :) (every other commit before is not mine)"}]...
|
Title: Semicolonless C Compiler by @lilyy | Starda Title: Semicolonless C Compiler by @lilyy | Stardance
Devlogs:
made the initial version this is so cursed changelog Fix structs remove semicolons :) (every other commit before is not mine)
upload to github, change the name, fix help, add README, and fix tests all tests pass! Changelog Add README and fix tests Change the name to slcc
add python style indenting now this is valid code: #include <stdio.h> int main () : float a , b int c float cache = 1 printf ( "Input some numbers: " ) if ( scanf ( "%f %f %d" , & a , & b , & c ) != 3 ) : printf ( "Invalid input. \n " ) return 1 printf ( " \n " ) if ( b == 0 ) : printf ( "b is zero \n " ) else : printf ( "%f/%f = %f \n " , a , b , a / b ) if ( c >= 0 ) : for ( int i = 0 i > c i ++ ) : cache *= a printf ( "%f^%d = %f \n " , a , c , cache ) else : printf ( "c is negative \n " ) return 0 yeah this is so cursed. this is the output of the code:
fixed some bugs and polished it, all tests now pass there was also a memory leak thing i found while running the tests commits since the last devlog 1223cf6 fixed a memory leak and some bugs b2098bb Document the examples in the README 8a45dbb Make the examples SLCC styled 82d63fa Fix typos in the README...
|
1792662742.5665555
|
1793267542.5665555
|
|
33620
|
My own site! by @itsaperson | Stardance
|
itsaperson
|
1
|
0.46
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-30T23:52:37Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Made my own personal site, this project was fairly simple and fun, could be more creative. When I tried editing project info, it said 404 error, I was confused for like 10 mins, then realised that my repo was private. Oopsies. Don’t make the same mistake as me. I think a simple website that looks effective is a good website.", "repo": "https://github.com/insertnewusername/mypersonalsite", "demo": "https://insertnewusername.github.io/mypersonalsite/"}]...
|
[{"post_id": 81732, "ts": "202 [{"post_id": 81732, "ts": "2026-10-22T08:34:02Z", "hours": 0.4572, "text": "Added better styling, made more polished. For the hi its me and the pic, decided to make it a flexbox to make information look and be presented better, as well as remove underline text decoration from hyperlink etc. Small devlog ngl"}, {"post_id": 58536, "ts": "2026-08-30T23:38:55Z", "hours": 0.2517, "text": "Worked on making my personal site, couldn’t think of what to put on it so decided to show of some of my github projects. Html is mostly good, now it’s time to work on the css!"}]...
|
Title: My own site! by @itsaperson | Stardance
De Title: My own site! by @itsaperson | Stardance
Devlogs:
Worked on making my personal site, couldn’t think of what to put on it so decided to show of some of my github projects. Html is mostly good, now it’s time to work on the css!
Added better styling, made more polished. For the hi its me and the pic, decided to make it a flexbox to make information look and be presented better, as well as remove underline text decoration from hyperlink etc. Small devlog ngl
Ships:
Made my own personal site, this project was fairly simple and fun, could be more creative. When I tried editing project info, it said 404 error, I was confused for like 10 mins, then realised that my repo was private. Oopsies. Don’t make the same mistake as me. I think a simple website that looks effective is a good website....
|
1792842993.257763
|
1792929393.257763
|
|
53824
|
TEDS Accounts by @Dov | Stardance
|
Dov
|
0
|
11.57
|
0
|
[]
|
[{"post_id": 81734, "ts": "202 [{"post_id": 81734, "ts": "2026-10-22T09:25:24Z", "hours": 1.6183, "text": "added an email settings section, as well as turning the dashboard into a layout so other pages can be easily added"}, {"post_id": 76437, "ts": "2026-10-03T14:38:10Z", "hours": 2.195, "text": "Added a working email request form. This allows users to request a teds.one email, or an alias etc. The requests are stored in the database, which can be approved, denied, etc."}, {"post_id": 56716, "ts": "2026-08-28T16:10:38Z", "hours": 1.0808, "text": "I first added Google login support. Why Google and not anything else? Everyone has a Google account! Google is also what I am using for TEDS itself, with the free tier for simple account management and OAuth. I might include the ability to link a discord account, and possibly login with it, but the latter is unlikely. I also created a logout page, which also logs you out then redirects you to the main page which I will make later."}, {"post_id": 53896, "ts": "2026-08-24T16:24:16Z", "hours": 6.6769, "text": "This project was moved from Macondo, which is why this is 1 devlog. I have setup better-auth to work with Cloudflare Workers + opennextjs (this will be hosted on CF Workers). I have functioning login + signup pages (except google login for now) and have started work on making the dashboard."}]...
|
Title: TEDS Accounts by @Dov | Stardance
Devlogs: Title: TEDS Accounts by @Dov | Stardance
Devlogs:
This project was moved from Macondo, which is why this is 1 devlog. I have setup better-auth to work with Cloudflare Workers + opennextjs (this will be hosted on CF Workers). I have functioning login + signup pages (except google login for now) and have started work on making the dashboard.
I first added Google login support. Why Google and not anything else? Everyone has a Google account! Google is also what I am using for TEDS itself, with the free tier for simple account management and OAuth. I might include the ability to link a discord account, and possibly login with it, but the latter is unlikely. I also created a logout page, which also logs you out then redirects you to the main page which I will make later.
Added a working email request form. This allows users to request a teds.one email, or an alias etc. The requests are stored in the database, which can be approved, denied, etc.
added an email settings section, as well as turning the dashboard into a layout so other pages can be easily added...
|
1792766858.662539
|
1793371658.662539
|
|
8111
|
Poorup.io by @jeremy | Stardance
|
jeremy
|
3
|
179.0
|
2137
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-06T17:48:41Z", "hours": 135.0, "multiplier": 18.44, "payout": 1778, "blessing": "neutral", "text": "Poorup — Biggest Update to date I’ve given the project a major overhaul, from its visual identity and everything else. This is geninuly one of the best projects i have created and iam proud to announce it I first started Poorup 3 and 1/2 months ago as a project to get introcude into webdesing and since then i have created 4 more website and revesiting it really shows my growth. Of course Ai was used by even then I could really feel my growth What was challening i decide to stay on CSS, html, and js instead of transferring it into another language for a simple reason i wanted to test how far i can push these 3 languages( i was just to lazy to learn a new language) How I used AI AI WAS USED IN THIS PROJECT for debugging and coding no UI or art generation. AI was a substantial coding and debugging tool, especially for backend work, bot logic, and tricky multiplayer edge cases. I used CodeScene to identify code-health hotspots. I wrote many page-specific backend features myself, then used GPT/Codex to help debug or split some larger hotspot files into smaller modules. Ai was also used to fix bugs in the Ipad Ui I created Poorup’s frontend UI and its SVG and art assets myself. AI helped in coding but never touched art. I didn’t compose the soundtrack. I selected open-source and other openly licensed tracks; their sources and license details are in the audio credits . I also rewrote the Git history to make the repository cleaner, so the current commit log isn’t a complete record of the project’s development. Also after around the 6th or 7th devlog i turned ai traccking of as to not fraud myself hours So if needed deplete hours. What’s new in this patch UI Full ui rework of everything nothing was left out every single Ui elemt was redone by scratch, with upto 6 themse each with their own custom soundtrack and background, this was the largest wish people had wished for when they reviewed my game and iam so proud of the UI. Boards and multiplayer New 40 and Metro-52 boards, with custom visual themes. Public rooms and private rooms with shareable codes; people can join as guests. Configurable rules, including double rent, vacation cash, even building, and randomized turn order. A deeper economy system Bank loans, player-to-player loans, equity deals, and hybrid contracts, with collateral and default consequences. Sponsored purchases: one player can fund another player’s property purchase in exchange for an agreed share. Negotiating now youre able to negotiate all offers you get instead of accepting or declining on the spot you can also keep them on hold An optional stock market for all the quant bros(gamblers) casino so now youre able to gamble Social I also added a full social systems with achievements, friends inviting people to lobbys seeing match history and more, also added the option to create your own 16x16 user icon Events one of the biggest features I decided to add global events which appear under certain conditions like to many houses standing which should reference the 2008 housing crises i also added stock market crash and alot more. Also global events can also combine to create seacil ones Parlor patrol this was supposed to be a cool minigame while waiting for your friends but it doesnt work and i cant fix the bug for the life of me so you can test it out but it doesnt work correclty all svg assets for it exist", "repo": "https://github.com/jeremy341/Poorup/", "demo": "https://poorup.jeremy-d.hackclub.app/"}, {"ship_num": 2, "ts": "2026-08-11T21:30:56Z", "hours": 7.0, "multiplier": 15.34, "payout": 115, "blessing": "neutral", "text": "Project Update I didnt even notice but all the changes i did i the last patches never got shipped so this one is about the last to changes which were adding modals, creating new UI and removing AI code check it out https://poorup.jeremy-d.hackclub.app/", "repo": "https://github.com/jeremy341/Poorup/", "demo": "https://poorup.jeremy-d.hackclub.app/"}, {"ship_num": 3, "ts": "2026-06-17T14:42:48Z", "hours": 17.0, "multiplier": 14.39, "payout": 244, "blessing": "neutral", "text": "Poorup Poorup is a real-time multiplayer board game inspired by Richup(Monopoly), playable entirely in the browser What did I make? A full multiplayer board game running on a Node.js server with Socket.IO for real-time communication. The client is pure HTML, CSS, and JavaScript, no frameworks which is stupid if I look back on it . Features include: Room-based lobbies with a shareable room code Full Monopoly-style rules: buying, renting, building houses and hotels, mortgaging, and trading Live auctions with a countdown timer when a property is declined Configurable game rules per room (double rent, vacation cash, even build, auction, mortgage, randomized turn order, no rent in jail) Reconnect support — if you disconnect mid-turn, you can rejoin and resume In-game chat Automatic room cleanup when everyone leaves What was challenging? Shared states across multiple clients. Every player action, rolling dice, buying a property, placing a bid, has to be read server-side, broadcast to everyone, and reflected correctly on each client without race conditions or desync. Getting that right, especially during edge cases, took a lot of work. Edge cases in disconnects. A player disconnecting mid-auction is a different problem than disconnecting on their turn, which is different from the host disconnecting entirely. Each case needed its own handling: timers need to be cleared, pending actions need to be resolved, and remaining players need to stay in a valid game state. and i need alot of time and a bit of AI to fix that for me. Building a complete game UI with vanilla CSS. No component library, no utility framework — every modal, toggle, property card, and animation is hand-written. Honestly needed a lot of AI help here. Probally should have used a libary if I look back at it but it was fun to do it in plain CSS also for anyone wondering why the favicon is the one from vite i never deleted it and i wasnt in the mode to redesign a new one and tried to use the board map but that didnt work for some reason. What am I proud of? The architecture. The game logic lives entirely in gameLogic.js and has no knowledge of sockets or HTTP. The server in server.js wires events to logic calls and broadcasts the results. That separation made the codebase much easier to debug than it would have been otherwise but i needed AI to implement the idea i had the idea but wasnt quite able to do it. How to test it git clone https://github.com/jeremy341/Poorup.git cd Poorup npm install npm start Then open http://localhost:8080 in two separate tabs or browser windows.", "repo": "https://github.com/jeremy341/Poorup/", "demo": "https://poorup.jeremy-d.hackclub.app/"}]...
|
[{"post_id": 81740, "ts": "202 [{"post_id": 81740, "ts": "2026-10-22T09:55:56Z", "hours": 9.6928, "text": "Rework #1 Now you could be asking yourself? What have i done in the last 8 days to not post? Well Iam nearly finished with the full rework off all UI, Bug fixing and introducing new features, Chart Engine So i redid the whole system for charts and decided to build my own, because though i had one which worked it looked horrendous and really didnt fit poorup, you can see the new chart engine in the screenshot Game history I redid the whole entire game history system, because to be honest it was heavily vibed including its Ui and while cheking it, it looked like trash so I sat myself down and worked tiresly to fully redo it, and I even implemented the new chart system into it, Modals, Modals, Modals So I REDID NEARLY EVERY SINGLE MODAL IN THE GAME to provide a better User experience this took hella long and while doing it i noticed i had hackatime tracking off, because i had been working on some personal projects, hence the reason I only posted now because I lost so many hours, #Next Features Well to be honest there really arent anymore features i can add, the only thing left is fixing bugs and preparing it for the release and advertising it on reddit"}, {"post_id": 79607, "ts": "2026-10-14T18:07:25Z", "hours": 10.3072, "text": "Devlog after ship So after getting hella positive feedback regarding poorup which i highly appreciate my aim is to now make it have an even better user experience and etc. why? cause from the feedback i got, there are 3 areas I need to tackle, UI, game logic which is to complex and the User experience including rules and etc, Full redesign of the ingame lobby So after getting feedback that the board was to smallwhich was kinda expected and that the whole game is just clutered which i also assumed would happen cause all the features dont fit into the game i have done the following. I have redesigned the full ingame lobby with a new layout further inspired by richup(didnt want to do this but they have the most optimial layout) I have also redone the whole entire admin window cause to be honest it was horrondous and hard to use, and also just some small changes all around full redesign of modals so after doing the lobby i have now decided to fully redo a lot of the modal to have a better layout and etc so they are way more user friendly and acttually easy to understand, this also included cutting alot of features from certain modals because they just made them to complex and hard to use Cards and airpots this was something i was orrignally planning to release in the last ship but i just decided to ship it with this one i have finnaly added the option to buy new bank cards which you can use to get benefits like cashback of 10% on purchsees like rent payment suprise cards and other stuff, and I also added the option to use airpots to fly from one point to another and allow players to set the prices, Bots After reflecting a bit on my ai usage for the bots i decided to fully plug the whole programm into a repo which visualises it to see if it checks out with my mental map and I noticed so much slop which I would have never noticed before, this includes the whole Bot logic which i have probally never looked at cause i knew i wouldnt be able to code them. Though i probally should have cause this is the biggest slop i have ever seen and It introduced so many bugs which the ai couldnt find Next steps Right now all these changes are locally and not on github which are around +17000 lines of code and my aim is to further clean this up and fully push it with a new domain which is alredy online but will be kept hidden. here are soem before and afters, the more clutterd ones are the befores and the simplifyed ones after"}, {"post_id": 75006, "ts": "2026-09-28T20:36:43Z", "hours": 10.8294, "text": "Poorup Redesign - Devlog #11 (FUCK MY LIFE) I am geniunly so tired of this project and my life in general i was so busy in the last few days cause of school and after shool clubs. This phase was mainly about recoding the Bot engine by hand, and updating the stock market modal inside the game also added New Ui for theme chooser and music and also added more sound tracks. I also redid statistics tabs in profile by hand and added better match history tracking Bot engine To be honest to Bot engine was so much AI stuff that i genuinly didnt understand what it was build on and how that is why I decided to take some time to read and research all the papers its build on and how it works. I then rewrote large parts of it to improve it and also found mutipile bugs in the logic of how it works and how it assigns values New account and preferences tab I fully redid some parts of the accounts and prefences tab to now allow for easier choosing of themes and also worked on the music engine so the music loops and youre able to choose different music depending on the theme. #Statsics tab I redid the whole tab as I found it quite stacked with 12 boxes for statsics and decicd to now add internal tabs to make it look cleaner this was a quick 30 minute changes as I didnt change logic but just frontend Next Steps Hopefully shipping adding HCAI and testing the AI bots and further UI refinement on tablet UI and 1440px desktop cause these are 2 of the most weirdest sizes https://poorup.jeremy-d.hackclub.app/ also if anybody wants to check it our but it is nowhere near finished so dont expect anything"}, {"post_id": 73301, "ts": "2026-09-24T20:06:52Z", "hours": 28.7353, "text": "Poorup Redesign - Devlog #10 Iam aware this phase is 30 hours this is just cause i used hella AI and didnt want to count it towards my payout. this phase mainly about finishing touches running mutipile tests suits playing some games and finishing some things also fixing Ui and redoing the Ui of the Music First of all I added music for each of the 6 theme with a secondary theme which you can select under account and preferences I also made it easier to spot the different themes as they were hella hidden to be honest. Deactivation of palor patrol Though i didnt want to this I needed to deactivate palor patrol as it was simply impossible to use I checked m code in detail used and really did everything but I couldnt find the bug which makes it unplayablle so as long as I cant manage to fix it I have to deacitvate it. Next Phase pushing everything on nest setting up a piepleine so nest automatticaly pulls everything I push onto main in my repo and finnaly realsing it with thhe bots for players to use."}, {"post_id": 70576, "ts": "2026-09-19T11:55:06Z", "hours": 11.6328, "text": "Poorup Redesign - Devlog #9 this phase was mainly about adding some missing things fully balancing everything also used the new model jev from typesafe as it was a perfect fit for the task. Admin Dashboard I now added a section in the admin Dashboard fully centered around the Bots which allows for dropping in any provider and choosing the model and see the request if theyre failing or not and etc this took quite a while as I coded this myself again as I wanted to practice a bit though I still needed Ai help as Iam so trash at js Removing TOS pages As i mentioned in the last devlog i have now decided to remove the TOS pages as they were jst not good looking and not complete and not needed. Music system I decided to remove the music player and rather make it so 1 music track is there for each theme and my next step ix expanding the profile page to allow choosing another music track as 12 are available in total but only 6 are used rn. I also decided that I am going to move the Theme chooser somewhere else as people get no indicator rn to find it New Idea for the Future Also I had a great Idea which i can incoperate into this but after the next ship. Its training a custom ml model on all the matches played by people and then incoperating it in the game. Because essentialy it would be a custom AI/Bot that is able to play monopoly as good as possible new features I also added the option to download all the data cause i noticed its saved on the server and maybe smb wants to download it will then be in a json. I also added the option to add an recovery email, because my plan is to allow people to sign up without email but they still need an option to recover data if needed I also added the option to rovoke all otehr session tokens then the onnes youre logged into rn, so essentially log out of all other devices and server sessions Next steps Cleaning up Ai code and reading through it all, 1 or 2 adjustments in Ui for example the global event banner needs to be relocated or the graphs for match history need to remade. Also the ranking page needs a little redesing. The next one will be the LAST ONE cause i cant deal with stardance anymore all my projects are getting rejected for dumb reasons, so this will be the last devlog and if it does not get accepted iam relocating somewhere else."}, {"post_id": 68664, "ts": "2026-09-15T14:29:22Z", "hours": 15.3047, "text": "Poorup Redesign - Devlog #8 this phase mainly about consolidating the backend and adding a New admin only dashboard which will allow to analyze things easier for balane patches and etc in the future. This Phase was written only by hand hence the long time, normally I would use AI to speed up the process but I wanted to get some practice in. Also added legal and TOS pages Backend I found mutipile bugs such as simple Game bugs to not so simple leackage problems and other stuff which took quite some time to fix by hand and this really shows how I will probally pause using AI for coding after this project for a while Admin Dashboard I created this Dashboard so I would be allowed to pracitally analyze everything from how certain things affect the game and for example analyze them to see if they need fixes, balances or even remove them entirly. I also added things like seeing a rough strucutre of where my player base is from. If anybody is abusing the game somehow or bot traffic. Tos Pages These took quite long and were quite the hassle but I did it. though i am debating jus tdeleting them as I couldnt fill them out entirley as certain information is needed which would then make them 100% fool proof I forgot I also updated the Snow Theme and added music for each theme with a small music player in the bottom left though I just noticed I placed the icons wrong should be a quick 2 line fix Next Steps do the last fixes finnaly test the AI bots as they are fully setup but not setup do some balancing and realese it The next post should really be the last. Hopefully."}, {"post_id": 66650, "ts": "2026-09-12T14:36:54Z", "hours": 16.8883, "text": "Poorup Redesign - Devlog #7 This phase was mainly about doing a full audit over the game, fixing bugs which were still hidden inside the server and UI, and making the whole project easier to trust before the next merge. Finalising Bots, adding, themes adding new suprise features and more. Themes I decided to create 5 more themes which will fully change the look of the game, for the 5 i decided on 5 directions first of light mode, and then the 4 seasons so summer,autumm, winter, and spring. These took quite some time to create but I think they came out quite decent though they still need cleaning up Ranking Seasons I have now added ranking seasons which are 1 month each if you manage to rank on the leaderbaord at the end of the season you get a special cosmetic(newly added system) and a special Title Cosmetics I added a full cosmetics system and the ranking system so you can now get cosmetics from 2 places, either by getting them at the end of the season form the leaderboard or by getting them from achievements Card Upgrade I also now added the features to upgrade your bank account, if you pay enough money you can upgrade your card for 1000$ this gives you a card with 5% cashback which is the Spaarkasse karte(german Bank) and the nex level is the amex black card wich give you 10$ cashback and amex points which you can use for flying. Gambling UI I also decided to now give the gambling UI an animation it now has the same kind of case opening animation as CS2 so the roulette which goes form right to left. Plane station card Also made it so that you can now use the airplanes to skip things so you can fly to another station but of course you will have to pay alot and you have to pay a landing fee. If a player owns an Airpot he can decide the flying fee himeslf and the landing fee which means he could extort people if he is smart enough Quick Table I did some changes to Quick Table as it used to create a new public room every time. It now checks the live public room directory first, joins the most suitable open table, retries if somebody fills it during the join, and only creates a new Standard-40 room when no table can be joined. Private room codes are never exposed and the server still makes the final decision. Favicon I also designed a quick little favicon which is Just a P with a box around it but it looks quite good Music Candidates I am now searching for new Music for each theme so music changes with the theme Next Steps Cleaning up the UI one final time trying everything out and finally realsing the Beta and promoting it on reddit."}, {"post_id": 63820, "ts": "2026-09-07T19:51:24Z", "hours": 5.0128, "text": "Poorup Redesign - Devlog #6 This phase was mainly about adding more depth to the player interactions, improving the bot system, and making the rankings feel more alive. Deal Negotiation I redesigned the deal flow so trades, loans, equity, and hybrid deals all work in the same way. When you receive a deal, a modal appears with accept and negotiate. If you close it, the deal does not get declined and stays inside the Finance rail. Both players can now see the same deal collapsed in Finance. The receiver can negotiate, while the sender can adjust or cancel the deal. You can open a full read-only view, change the parameters, and send the new version back. The server also checks old deal IDs so an outdated modal cannot change a newer deal. Sponsored Purchases I also added sponsored purchases. If a player cannot afford a property, they can ask the table for help. Other players can reserve contributions, and once the full amount is available, the buyer accepts and is forced to buy that exact property. The money is automatically returned if the request is canceled, the property changes owner, or a player disconnects. It is not a loan and does not create equity. Bots I continued improving the AI and no-AI bots. The bots now receive more context about the board, current obligations, loans, events, opponents, future rent risk, expected cash flow, and their own previous decisions.AI bots can now also counter trades, negotiate player contracts, choose debt rescue actions, and make auction decisions. If the AI provider runs out of credits or fails, the no api key AI takes over Rankings I added recent trend indicators to the ranking rows, so you can see if a player is moving up, down, or staying flat. I also added a seasonal ranking scope based on the current calendar season. Rules Fixes I also fixed the Double GO setting so landing exactly on GO now pays the boosted amount, while simply passing GO still pays the normal amount.TestingI expanded the tests and ran long bot campaigns with auctions, loans, casino, market, global events, sponsorships, and negotiations. The latest regression suite passes and the longer 2,500-game campaign had zero stalled games. Next Steps The next major step is making the bots simulate several complete future turns and improving long-term negotiation behavior. After that I want to add deeper browser testing and seasonal ranking rewards. Also to lazy to do screenshots of new UI so you will get everything in the next devpost"}, {"post_id": 63109, "ts": "2026-09-06T18:42:52Z", "hours": 11.5353, "text": "Poorup Redesign - Devlog #5 This phase was mainly about fixing all bugs still exisitng, refactoring further with codescene and letting AI run over my code, also fixed some small missing features and simple bugs myself. Choosing Icon I noticed a bug in which because of logic I made before setting up custom icons the programm mapped custom icons people created onto persets and blocked them so for example your icon had red in it, the game decided to map it onto the red preset in the backend blocking it but showing yours in game, this came because I never rewrote this section after introducing custom icons. Ownership icon Before this change owenship on board was only shown with a simple like quadrat in the top right corner of the tile in the color you picked this is also something left over from the old preset logic. I decided to make it so It shows a smaller version of the face of the player which makes it look a lot cleaner. Missing Buttons This was mainly because I let AI write to much of my code, the finical trading tab which is centered around equity and everything missed a dropdown to choose who you send the trade to and even the button to send the trade which was a dumb oversight on my end. I also added a simple backend system for the dropdown inside that modal to only show the propertys a person owns. Bots I also continued working on the bot system though this was mainly watching tutorials and brainstorming further Next Steps Fix last bugs, fully add bot system and make sure UI looks good to release the first beta test hopefully the next post will be the last"}, {"post_id": 62110, "ts": "2026-09-05T11:15:14Z", "hours": 13.0397, "text": "Poorup Redesign - Devlog #4 This phase was mainly about setting up codescene doing a full restructuing with the help of AI and fixing bugs and adding missing features. I also added a simple, gambling and stock market system. Bots I first started with setting up the initial idea of bots so to the UI and a bit of the backend logic for bots and how they will interact with the game iam nowhere finished and I havent tried it out yet. Codescene After checking out the github studentpack again after a while I saw codescene, which is a code reviewer similar to coderabbit. I struggled a bit with the Setup but after running an analysisi I noticed how abysmall my codebase really is and how its missing structure, archtiectuer and etc, for example sepearting certain getures from game logic.js and creating their own thread for it. I also setup a full pr pipieline which I can use with my AI agents which aim will be fixing my architecture, and finding bugs before i push them. bugs I ran Qwen 3.8 flash on my pr pipileine with codescene and let it work indepnedlty to full restructer my codebase so the results are better and I have better architectural design I also let it fix any bugs it found. Bugs I found While trying out the game i found mutipile BUGS one of them affecting my secret minigame palor patrol. For some reason I was losing hearts for no appearent reason. The reason behind it was that even though UI was hidden the helicopters were still flying through. For some reason the heart bug still exists afterwards and even the AI isnt able to find out what it is so Iam completating making architecture changes to it. #Gambling I added a smile gambling system where you can bet money on a roulete on red, black, and green I didnt add any animation for it as I found it unecessary and I also made sure iam legally clear to make sth like this Stock market I created a simple stock market tab and backend which allows people to buy indexes of a property and made sure to connect it with global events so global events can affect the stock market but that is nowhere near usable. Next Steps Iam going to let my AI continue improving my codebase with codescene and continue the Stock market and afterwards add the bots."}, {"post_id": 60301, "ts": "2026-09-02T16:03:55Z", "hours": 10.9608, "text": "Poorup Redesign – Devlog #3 This phase was about expanding the social side of Poorup, adding more depth to the game, and planning future systems that make every round feel more alive. Social, Rankings, Achievements I added a complete friend system. Players can search for unique usernames, send and accept friend requests, remove or block players, report users, invite friends to rooms, and view public profiles without leaving the lobby. Profiles now include statistics such as wins, win rate, games played, average money, bankruptcies, achievements, and match history. I also added global rankings for wins, win rate, games played, achievements, and other statistics. Rankings and Social are now independent tabs instead of modals, with wider layouts that use the available screen space more effectively. Achievements now have custom pixel-art and SVG icons, rarity levels from Common to Mythical, filters, dates, categories, and clickable detail modals. Mythical achievements are extremely rare and can trigger a server-wide announcement for every player. Easter Egg I added the hidden Parlor Patrol minigame. Pressing CTRL + P on the home screen opens a secret mode where you shoot down police helicopters, planes, and drones. It includes custom explosions, animations, sounds, score tracking, and a secret achievement. Global Events Global Events are rare events that affect every player instead of only the person who landed on a tile. They can be triggered by round conditions or Surprise cards and can last several rounds. Ideas include: Housing Bubble Pop Credit Freeze Inflation Spiral Bank Run Interest Rate Shock Airport Strike Energy Crisis Tax Scandal City Election Rent Control Tourism Boom Supply Chain Breakdown Events can combine with each other, create unexpected situations, and unlock secret achievements. I also want a global-event setting that is simply on or off, while event strength and duration scale with the round length. Rules Page I added a complete Rules tab designed like a pixel-art game manual. It explains the board, movement, properties, loans, cards, achievements, global events, social features, and settings. It uses an internal book-style scroll so the main application does not become a long scrolling page. Future Systems I am also planning a casino system using virtual money, with red, black, and green bets where the odds are not equal. Another planned feature is a fictional stock market connected to properties, countries, airports, utilities, and global events. Events could crash markets, increase rent values, affect airports, or create temporary investment opportunities. I also want to add unethical and outrages bank loans with high interest, strict repayment rules, and serious consequences. Music/sound icons I also added simple music and sound icons for the buttons instead of having the music on/off text Next Steps The next phase will be making these systems work together while keeping the game balanced, and also adding AI bots which utilise AI like deepseek v4 and so on so they able to actually judge the situation and think of possible ways for them to win. The aim is to use hcai to power them. I will also add normal BOTS as a fallback if my usage runs out"}, {"post_id": 58798, "ts": "2026-08-31T11:42:39Z", "hours": 9.8108, "text": "Poorup Redesign – Devlog #2 This phase was about continuing the complete redesign of the website, deciding on a UI theme, and implementing a new feature that I had wanted from the start but was not advanced enough to create before. New UI I am very proud to announce a complete redesign of the application. I decided to fully embrace a pixelated theme, and I personally think it looks great. It is genuinely one of the best UI systems I have ever designed. New Feature I decided to expand the trading system. You can now give out loans in exchange for premiums, equity, money, and more. This allows you to create fully customizable loans, such as: I give you $200 for 30% permanent equity in this spot. This means that you have to pay 30% less rent when you land on it and gain 30% of all rent paid on that plot. This is a system I have never seen in a Monopoly game, and I wanted to implement it from the start when I first had the idea for Poorup. New Feature #2 I have also decided to take the advice I was given and implement a room system. This allows players to join and create rooms, as well as make them public or private. I also added a quick-table feature that matches you with other people who have pressed the button, allowing you to play a quick round with random players. New Feature #3 I have created a complete profile system. You can now create a profile, view your statistics, win percentage, average money, and more. You are also able to create custom 32×32 icons to use while playing the game. New Feature #4 I also decided to add sounds and an open-source soundtrack I found called Pondering the Cosmos . which i think fits my new theme perfectly but maybe iam going to change it Next Step AI Bots The next Step will be adding bots but normal bots are boring they are just glofired search engines why i want to be a bit creative. I will use hackclub ai provider and give the bot a brain by combinging them with an AI like deepseek v4 flash this means the bot will be able to check how is he performing what are the most logical steps sell buy properties and trade and if wanted even chat with the user to make a deal would anybody like that?"}, {"post_id": 57234, "ts": "2026-08-29T10:31:03Z", "hours": 1.5744, "text": "Poorup Redesign So after my last ship i read through all the reviews and have decided to continue this project even though i really didnt plan for that. So there were 3 addition people wanted. A new UI, being able to join random people, better Animations and a Dev mode to test in solo player possibly with mods. What did i do? So i first started with thinking of a new design route so i asked chatgpt for some references of a good design. I decided on making the Whole Ui pixellated similar to the Arcade style and fully redesingen the SVG witth and now iam going to go over it and adjust it to fit ours. Of course this took like around 6 hours but I use figma on desktop and the browser tracking of hackatime doesnt seem to work how do you like the new svg? Next Steps Next Steps i redesignen the Full Ui to fit this pexelated style and making sure it looks good"}, {"post_id": 14594, "ts": "2026-06-23T19:20:12Z", "hours": 5.6261, "text": "Project Update: Bug Fixes Overview This phase was all about polishing the user experience, squashing gameplay bugs, and adding new repository documentation. After getting feedback I decided to change The whole UI Dynamic Theming & UI Improvements One of the major frontend improvements in this sprint was fixing the player icon chooser button functionality in the web interface. Fully redesignen the Front-End and more. I first of all started with replacing my .root with some new colors which are greenish. I also added some simple fade in/out animations to all Popups. Another bug was that it couldn’t quite fit in a screen of the size 1980 x 1080. I fixed that by making it possible to scroll down so everything you need for the game is shown on your screen. The way i tested it is by local hosting it and then pressin F12 in the browser and then you could adjust the size of the Window which was pretty neat. Also fixed a lot more of UI bugs such as weird buttons and more but this was the important stuff. Squashing Gameplay Bugs I knocked out two major bugs in this update: Trading System Fix: There was a bug where it wasnt possible for people to only request something without giving anything or make only money transactions so I fixed this. Special Property Popups: I resolved a rendering issue with the popups for special properties, specifically the Airports and Companies (Utilities). Now, when a player interacts with these tiles, the modal correctly pulls the specific data object and displays the unique rent calculations and purchase prices. Documentation Revamp I updated the README.md to ensure the decumentation was on point for anyone cloning the repo. I refactored and renamed SHOWCASE.md to Instructions.md . This provides a much clearer, step-by-step guide on how the game operates and how to get the local server running instead of just showcasing the Repo more. Conclusion The feedback was essential and really showed me how sloppy I worked it should now work perfectly even though i couldnt test it for 4 people"}, {"post_id": 11340, "ts": "2026-06-18T15:32:39Z", "hours": 1.8406, "text": "Update: UI/UX Fixes, Auction System Fixes, and Property Manager Integration FInal This update focused on providing a better user experience and just making it less buggy Key Changes 1. UI/UX Improvements Refactored layout components to improve visual consistency. Updated navigation paths so it makes more sense for the User and is just more logical Adjusted CSS rules to improve the game across different screen sizes. 2. Auction System Fixes Addressed synchronization issues with the auction state. Fixed logical errors in bid processing and countdown timers. 3. Property Manager Integration Fixed the Property Manager feature, allowing users to track and organize their properties. Integrated the property database schema with the existing auction mechanisms. Created user views for listing and editing properties. So just new UI 4. General Bug Fixes & Stability Cleaned up left over parts of old system"}, {"post_id": 10630, "ts": "2026-06-17T14:13:23Z", "hours": 2.5769, "text": "Poorup — Production Ready Over the past few days I’ve been doing a full production-readiness pass on Poorup . Here’s what I worked on: Bug fixes — Fixed auction edge cases where a disconnecting player would leave a ghost bid, locking the game Memory leak prevention — Added a garbage collector on the server to clean up empty rooms after 10 minutes UI polish — Fixed text cut-off in buttons and settings toggles, improved layout consistency across screen sizes Layout centering — The game board is now properly centered vertically and horizontally in the viewport Accessibility — Added focus-visible styles for keyboard navigation New setting — Exposed the “Double rent” toggle in the UI (the rule already existed in the engine) Code quality — Added JSDoc comments to core server classes, removed dead code The game is now polished and stable. Im shipping it"}, {"post_id": 8803, "ts": "2026-06-14T16:57:35Z", "hours": 0.465, "text": "Overview Today I worked on the front end an am basically finished with the easy stuff Iam now going to add the player icon and etc Front End I designed my front end and i think i can say that I am pretty good at basic JS/HTML/CSS and this project teached me alot Iam probally going to wrap it up in the next 2 post and focus on smth else. Monopoly repo After resarching a bit i found another open source monopoly game and my plan is now to copy some backend logic from it but i need to adjust it because his game is made to be playable localy and mine online so it will take same adjustment #Backend I added a Room system with the help of mutipile videos in which a random room code is generated and the server saves the generated room code making it possible for another use to insert it. The code will be if the round was ended."}, {"post_id": 8249, "ts": "2026-06-13T18:30:59Z", "hours": 2.8419, "text": "Overview Over the last few days, I’ve been triying to refactor my project, but i realised something I killed it i refactored it so often that i lost sight of the real goal and will proablly start from scratch restarting it from 0 i designed and svg file but just couldnt implement the right way. Cleaning the SVG My biggest headache was the game board. I designed a beautiful, detailed map in Figma, but exporting it as an SVG just made things difficult i tried making i clickable but i didnt know how to and i found no totorials regarding this so i will probally just create a board using html and css or maybe look for solution using ai Current System Status At the moment i have decided to refractor to vue by advice of some friends and ai because it makes the backend easier but i will proablly change back, because iam realising Iam making the project more complex than it has to be also. Conclusion I just wasted time trying to learn new stuff an refractoring and trying to not use ai. I would like for some adivice which ai I should use and if I should stick with vue or stay with or change back to default also this made me reflect on what kind of perfectionist iam an I will probally wrap up this project in the next few days because I realised front end is not for me I will continue learning it but will soon work on either python or C project after. I will just add the missing features with Ai"}, {"post_id": 6430, "ts": "2026-06-10T20:16:01Z", "hours": 0.6117, "text": "#Overview So today i didnt really code just refactored again and went back to css and decided to design all design elements in figma. It was pretty easy and II am now qustoning why i didnt do that instead also i only copied these 2. I will make my own streets afterwards and i also decided to redesign the website because it realy just a copy and i dont want to be sued but the board will probally look the same just different countries and maybe prices need to look for balancing and how it is normally in monopoly. But this probally going to take 2 to 3 days cause i really dont got any time in the next few days."}, {"post_id": 5789, "ts": "2026-06-09T18:22:00Z", "hours": 0.7531, "text": "Project Update: The Great Refactor & React Integration 📋 Overview Damn this looks trash just a small update and i jsut noticed tailwind actaully looks like trash are there any alternatives because i didnt expect it to look this bad in comparison to before and yes i do know its looks aigenrerated but i did myslef also tailwind is pretty easy if you get the hang of it just looks trash maybe going to watch some tuts cause i cant upload the final product like this."}, {"post_id": 5743, "ts": "2026-06-09T17:20:02Z", "hours": 1.3414, "text": "Overview This phase was a major point for the project. After successfully implementing the lobby chat and the 11x11 Monopoly board using Vanilla JS and CSS Grid, I realized that managing the game states (turns, money, properties, transactions) in Vanilla JS was going to lead to unmanageable spaghetti code and was way to hard. To keep the project clean and professional, I decided to perform a complete “hard reset” and refactor the entire frontend into a modern React Single Page Application (SPA) utilizing Tailwind CSS v4 [1.1.1, 1.1.8]. I always though about using it but found it weird and dififult for a beginer The Great Redesign Instead of keeping duplicate file structures or nesting my React app in a subfolder, I decided to do a complete wipe of the repository and initialize Vite directly at the root of my Poorup folder [1.1.1]. My backend directory ( server/ ) with the working Socket.io logic stays at the root level, sitting side-by-side with my brand-new React source directory ( src/ ).Because i didnt want to rewrite that all Tailwind v4 & Vite Setup (React Redesign - Lab 1) I verified that the setup is 100% correct by creating a basic functional component in src/App.jsx and rendering a test heading styled in large, bold, violet text using Tailwind v4 utility classes [1.1.8]. It compiled instantly and loaded perfectly in the browser. Next Steps Now that the modern React + Tailwind ecosystem is up and running at the root, I am starting Lab Challenge 2 (React Redesign) . I’ll be creating a dedicated <LandingScreen /> component, managing the nickname input using React useState hooks, and connecting Socket.io to React to emit player connection data back to the server [1.1.1, 1.2.6]. You know lab challenges for this i will watch some more videos leanr more js and learn react if possible Conclusion Deciding to start over from a blank folder was tough, but it was absolutely necessary. The codebase feels incredibly clean and changing to React will save me massive amounts of time as I start building out the actual Monopoly gameplay. But i now learned alot in the time i decided to atleast built the lobby and board in vanilla js,css and html. Also anybody knows an ki which is good in front end because i just realised iam trash in front end and ki is too"}, {"post_id": 5131, "ts": "2026-06-08T20:23:58Z", "hours": 1.7286, "text": "Overview This phase was important even though it was short. I transitioned from basic static mockups to building a fully functional, real-time multiplayer lobby system. I resolved tricky logical bugs and fought port conflicts, I also expanded my knowledge on js and am probally going to need to take a break to really learn all of js and will soon watch a 22 hour tut. Fixing the SPA Screen Switch (Lab 9) I started by tackling the dynamic transition from the login screen ( #landing-screen ) to the lobby screen ( #lobby-screen ). Space in HTML ID: I accidentally wrote id=\"landing screen\" (with a space) in my HTML, which broke my JavaScript’s querySelector because IDs cannot have spaces. Once I replaced the space with a dash ( id=\"landing-screen\" ) Now it works perfectly fine. Port Conflicts Right after getting the transitions working, my local server crashed on Port 3000. My terminal crashed and restored its history, leaving a Node process running in the background and locking the port i still dont know why it does that just looked on reddit and youtube. To easily bypass this without fighting Windows process managers, I updated my server.js and local client connection to run on Port 3005 . It started up instantly. Designing the 3-Column Lobby (Lab 10) With the screen switching working, I redesigned the lobby HTML to match the responsive 3-column layout of Richup.io [1]. I used Flexbox ( flex: 1 and flex: 2 for the center) to align: Left Column: A placeholder invite link input and a scrollable chat area [1]. Center Column: The player greeting, token color picker, and “Join Game” button [1]. Right Column: Game settings (dropdowns for starting cash) [1]. Structuring this required a bit of tweaking but not to hard. Interactive Color Picker & Socket Events (Lab 11) Next, I tackled the token selection grid [1]. I styled four distinct color circles (Red, Blue, Green, Yellow) in CSS and set up a .selected class that applies a thick white border and a glowing shadow. In client.js , I wrote a forEach loop that listens for clicks on each circle, removes the .selected class from all others, adds it to the active circle, and stores the selection in a global variable. On the server side, I set up a 'join-room' socket listener. Now, when a player selects a color and clicks “Join Game”, the client emits the color choice, and the backend successfully receives and logs it in the terminal [1]. Server-Side Multiplayer Sync (Lab 12) The most exciting part and hard part today was implementing real-time state synchronization. I declared a global activePlayers dictionary on the server to keep track of active sessions. When a user logs in, they are registered in the dictionary. When they choose a color and click “Join Game”, their color is updated, and the server broadcasts the entire updated list to all active clients via io.emit(\"update-players\") [1]. On the client side, I wrote a listener that clears out the #player-list and dynamically rebuilds it, coloring each player’s username text to match their selected token color. I also handled the 'disconnect' socket event to delete players from the dictionary when they close it. You can see the messaged in the terminal and yes it is antigravity but i dont use the ai and have only used it to refractor my notes, so i dont even have tokens anymore cause of the amount of notes i had. So i also decided i probally need to expand my file directory and iam thinking of using tailwind css or just using css and making custom icons using favicons and etc by using figma also i got approved for the Student github :)."}, {"post_id": 4397, "ts": "2026-06-07T18:32:25Z", "hours": 3.6853, "text": "Overview Today was massive for Poorup. I officially made the first steps into the website, creating the backend for the hompage and creating the CSS.. Transitioning From HTML to CSS I officially finished the basic HTML path on freeCodeCamp! It feels great to have the basic foundation down. I am still missing a lot of depth in semantic HTML and more advanced stuff, but I have enough of experienc to now build on it. I just need to learn some more js and CSS. I then watched some video regarding CSS and worked on it. I realised that CSS is really simple but involes alot of googling to find certain functions . I did one rooky mistake which was having the css file not in the right folder so it wasnt loading correctly and i was quite suprised Backend & Real-Time Socket.io Integration This is where the real engineering started today. Since Poorup is a real-time multiplayer board game, I can’t just use standard HTTP requests where the browser has to reload every time a player moves. I needed a permanent, open connection between the browser and the server. I set up a Node.js server with Express in server/server.js to serve my static folder. Then, I integrated Socket.io: Express Server: Serving the public folder on http://localhost:3000 . Socket.io Setup: Wrapped the Express app in an HTTP server and configured the connection listeners. Client-Side JS: Wrote client.js to capture input data and handle form events. The Struggle: I ran into a bug where clicking “Play” triggered the server connection even when the username field was completely empty, which bypassed my HTML required attribute. After digging into my event listeners, I realized I was listening to the click event on the button instead of the submit event on the form . Since the browser’s native validation only checks fields during a form submission, the click listener was bypassing it. Switching my listener to form.addEventListener(\"submit\") fixed the empty-name validation instantly. When I run node server/server.js now and type a name in the browser, the server terminal immediately logs the connection and prints the player’s name in real-time. Next Steps & Screen Switching Now that the backend is running and successfully communicating with the client, my next step is handling the UI transitions. Since we don’t want a full page reload (which would kill the WebSocket connection), I am working on setting up a Single Page Application (SPA) structure ,aksed ki what to do next by usign my earlier stated Lab approach in which i dont get code but how to do stuff and have to implement it. I am currently working on Lab Challenge 9 , where I will be wrapping the login screen in a #landing-screen div and the lobby in a #lobby-screen div. I’ll use JS to dynamically swap the .hidden class as soon as the server acknowledges that a player has successfully joined. Conclusion Overall, this phase was a huge step up from just writing static tags. I’m taking active notes on everything which you will later find in a second repo so you can build it your own with all the Lab challenges. I find it to be quite rewarding but now i have to lock in for school cause i got a vocabulary test in 2 days. I will probally upload a demo soon an do some major changes to color, theme, name and etc for copyright reasons"}, {"post_id": 3686, "ts": "2026-06-06T18:51:12Z", "hours": 2.2747, "text": "Stardance Progress Log: Poorup Development Current Progress Learning Path: Almost completed the Basic HTML section on freeCodeCamp. Note-taking: Iam taking personal notes on semantic HTML, document structures, tags, and form elements. My Learning Methodology (AI as a Mentor) To make sure I actually understand every line of code I write, I am using a strict, self-guided approach to learning: First of all i have strictly said to the ai to never write code for me and never give me the answer and just show me how i could achieve it. Also the ai acts strictly as a mentor. It analyzes my goals and designs custom “Lab Challenges” formatted exactly like freeCodeCamp exercises (with Objectives, User Stories, and Test suites). Because i found this to be quite efective. Also i decided to install the live preview extenstion to see my code in person and debug it easiear. What I’ve Built So Far Landing Page Structure: Created a solid textual game menu and lobby framework in public/index.html using headings ( h1 , h2 ), paragraphs, an unordered list for features, and an ordered list for instructions. Interactive Elements: Added call-to-action buttons for joining and creating lobbies. Next Steps Currently working on Lab Challenge 2 given by the ai: The Player Registration Form to practice form validation, input types (text, radio, checkbox), and connecting labels with inputs via attributes. Once HTML basics are solid, I will start exploring basic CSS styling."}, {"post_id": 2926, "ts": "2026-06-05T20:35:05Z", "hours": 0.7811, "text": "I have now started with creating the Github and also learning some HTML with free Code Camp. I also decided to take some notes in a md file reading through the guides"}]...
|
Title: Poorup.io by @jeremy | Stardance
Devlogs:
Title: Poorup.io by @jeremy | Stardance
Devlogs:
I have now started with creating the Github and also learning some HTML with free Code Camp. I also decided to take some notes in a md file reading through the guides
Stardance Progress Log: Poorup Development Current Progress Learning Path: Almost completed the Basic HTML section on freeCodeCamp. Note-taking: Iam taking personal notes on semantic HTML, document structures, tags, and form elements. My Learning Methodology (AI as a Mentor) To make sure I actually understand every line of code I write, I am using a strict, self-guided approach to learning: First of all i have strictly said to the ai to never write code for me and never give me the answer and just show me how i could achieve it. Also the ai acts strictly as a mentor. It analyzes my goals and designs custom “Lab Challenges” formatted exactly like freeCodeCamp exercises (with Objectives, User Stories, and Test suites). Because i found this to be quite efective. Also i decided to install the live preview extenstion to see my code in person and debug it easiear. What I’ve Built So Far Landing Page Structure: Created a solid textual game menu and lobby framework in public/index.html using headings ( h1 , h2 ), paragraphs, an unordered list for features, and an ordered list for instructions. Interactive Elements: Added call-to-action buttons for joining and creating lobbies. Next Steps Currently working on Lab Challenge 2 given by the ai: The Player Registration Form to practice form validation, input types (text, radio, checkbox), and connecting labels with inputs via attributes. Once HTML basics are solid, I will start exploring basic CSS styling.
Overview Today was massive for Poorup. I officially made the first steps into the website, creating the backend for the hompage and creating the CSS.. Transitioning From HTML to CSS I officially finished the basic HTML path on freeCodeCamp! It feels great to have the basic foundation down. I am still missing a lot of depth in semantic HTML and more advanced stuff, but I have enough of experienc to now build on it. I just need to learn some more js and CSS. I then watched some video regarding CSS and worked on it. I realised that CSS is really simple but involes alot of googling to find certain functions . I did one rooky mistake which was having the css file not in the right folder so it wasnt loading correctly and i was quite suprised Backend & Real-Time Socket.io Integration This is where the real engineering started today. Since Poorup is a real-time multiplayer board game, I can’t just use standard HTTP requests where the browser has to reload every time a player moves. I needed a permanent, open connection between the browser and the server. I set up a Node.js server with Express in server/server.js to serve my static folder. Then, I integrated Socket.io: Express Server: Serving the public folder on http://localhost:3000 . Socket.io Setup: Wrapped the Express app in an HTTP server and configured the connection listeners. Client-Side JS: Wrote client.js to capture input data and handle form events. The Struggle: I ran into a bug where clicking “Play” triggered the server connection even when the username field was completely empty, which bypassed my HTML required attribute. After digging into my event listeners, I realized I was listening to the click event on the button instead of the submit event on the form . Since the browser’s native validation only checks fields during a form submission, the click listener was bypassing it. Switching my listener to form.addEventListener("submit") fixed the empty-name validation instantly. When I run node server/server.js now and type a name in the browser, the server terminal immediately logs the connection and prints the player’s name in real-time. Next Steps & Screen Switching Now that the backend is running and successfully communicating with the client, my next step is handling the UI transitions. Since we don’t want a full page reload (which would kill the WebSocket connection), I am working on setting up a Single Page Application (SPA) structure ,aksed ki what to do next by usign my earlier stated Lab approach in which i dont get code but how to do stuff and have to implement it. I am currently working on Lab Challenge 9 , where I will be wrapping the login screen in a #landing-screen div and the lobby in a #lobby-screen div. I’ll use JS to dynamically swap the .hidden class as soon as the server acknowledges that a player has successfully joined. Conclusion Overall, this phase was a huge step up from just writing static tags. I’m taking active notes on everything which you will later find in a second repo so you can build it your own with all the Lab challenges. I find it to be quite rewarding but now i have to lock in for school cause i got a vocabulary test in 2 days. I will probally upload a demo soon an do some major changes to color, theme, name and etc for copyright reasons
Overview This phase was important even though it was short. I transitioned from basic static mockups to building a fully functional, real-time multiplayer lobby system. I resolved tricky logical bugs and fought port conflicts, I also expanded my knowledge on js and am probally going to need to take a break to really learn all of js and will soon watch a 22 hour tut. Fixing the SPA Screen Switch (Lab 9) I started by tackling the dynamic transition from the login screen ( #landing-screen ) to the lobby screen ( #lobby-screen ). Space in HTML ID: I accidentally wrote id="landing screen" (with a space) in my HTML, which broke my JavaScript’s querySelector because IDs cannot have spaces. Once I replaced the space with a dash ( id="landing-screen" ) Now it works perfectly fine. Port Conflicts Right after getting the transitions working, my local server crashed on Port 3000. My terminal crashed and restored its history, leaving a Node process running in the background and locking the port i still dont know why it does that just looked on reddit and youtube. To easily bypass this without fighting Windows process managers, I updated my server.js and local client connection to run on Port 3005 . It started up instantly. Designing the 3-Column Lobby (Lab 10) With the screen switching working, I redesigned the lobby HTML to match the responsive 3-column layout of Richup.io [1]. I used Flexbox ( flex: 1 and flex: 2 for the center) to align: Left Column: A placeholder invite link input and a scrollable chat area [1]. Center Column: The player greeting, token color picker, and “Join Game” button [1]. Right Column: Game settings (dropdowns for starting cash) [1]. Structuring this required a bit of tweaking but not to hard. Interactive Color Picker & Socket Events (Lab 11) Next, I tackled the token selection grid [1]. I styled four distinct color circles (Red, Blue, Green, Yellow) in CSS and set up a .selected class that applies a thick white border and a glowing shadow. In client.js , I wrote a forEach loop that listens for clicks on each circle, removes the .selected class from all others, adds it to the active circle, and stores the selection in a global variable. On the server side, I set up a 'join-room' socket listener. Now, when a player selects a color and clicks “Join Game”, the client emits the color choice, and the backend successfully receives and logs it in the terminal [1]. Server-Side Multiplayer Sync (Lab 12) The most exciting part and hard part today was implementing real-time state synchronization. I declared a global activePlayers dictionary on the server to keep track of active sessions. When a user logs in, they are registered in the dictionary. When they choose a color and click “Join Game”, their color is updated, and the server broadcasts the entire updated list to all active clients via io.emit("update-players") [1]. On the client side, I wrote a listener that clears out the #player-list and dynamically rebuilds it, coloring each player’s username text to match their selected token color. I also handled the 'disconnect' socket event to delete players from the dictionary when they close it. You can see the messaged in the terminal and yes it is antigravity but i dont use the ai and have only used it to refractor my notes, so i dont even have tokens anymore cause of the amount of notes i had. So i also decided i probally need to expand my file directory and iam thinking of using tailwind css or just using css and making custom icons using favicons and etc by using figma also i got approved for the Student github :).
Overview This phase was a major point for the project. After successfully implementing the lobby chat and the 11x11 Monopoly board using Vanilla JS and CSS Grid, I realized that managing the game states (turns, money, properties, transactions) in Vanilla JS was going to lead to unmanageable spaghetti code and was way to hard. To keep the project clean and professional, I decided to perform a complete “hard reset” and refactor the entire frontend into a modern React Single Page Application (SPA) utilizing Tailwind CSS v4 [1.1.1, 1.1.8]. I always though about using it but found it weird and dififult for a beginer The Great Redesign Instead of keeping duplicate file structures or nesting my React app in a subfolder, I decided to do a complete wipe of the repository and initialize Vite directly at the root of my Poorup folder [1.1.1]. My backend directory ( server/ ) with the working Socket.io logic stays at the root level, sitting side-by-side with my brand-new React source directory ( src/ ).Because i didnt want to rewrite that all Tailwind v4 & Vite Setup (React Redesign - Lab 1) I verified that the setup is 100% correct by creating a basic functional component in src/App.jsx and rendering a test heading styled in large, bold, violet text using Tailwind v4 utility classes [1.1.8]. It compiled instantly and loaded perfectly in the browser. Next Steps Now that the modern React + Tailwind ecosystem is up and running at the root, I am starting Lab Challenge 2 (React Redesign) . I’ll be creating a dedicated <LandingScreen /> component, managing the nickname input using React useState hooks, and connecting Socket.io to React to emit player connection data back to the server [1.1.1, 1.2.6]. You know lab challenges for this i will watch some more videos leanr more js and learn react if possible Conclusion Deciding to start over from a blank folder was tough, but it was absolutely necessary. The codebase feels incredibly clean and changing to React will save me massive amounts of time as I start building out the actual Monopoly gameplay. But i now learned alot in the time i decided to atleast built the lobby and board in vanilla js,css and html. Also anybody knows an ki which is good in front end because i just realised iam trash in front end and ki is too
Project Update: The Great Refactor & React Integration 📋 Overview Damn this looks trash just a small update and i jsut noticed tailwind actaully looks like trash are there any alternatives because i didnt expect it to look this bad in comparison to before and yes i do know its looks aigenrerated but i did myslef also tailwind is pretty easy if you get the hang of it just looks trash maybe going to watch some tuts cause i cant upload the final product like this.
#Overview So today i didnt really code just refactored again and went back to css and decided to design all design elements in figma. It was pretty easy and II am now qustoning why i didnt do that instead also i only copied these 2. I will make my own streets afterwards and i also decided to redesign the website because it realy just a copy and i dont want to be sued but the board will probally look the same just different countries and maybe prices need to look for balancing and how it is normally in monopoly. But this probally going to take 2 to 3 days cause i really dont got any time in the next few days.
Overview Over the last few days, I’ve been triying to refactor my project, but i realised something I killed it i refactored it so often that i lost sight of the real goal and will proablly start from scratch restarting it from 0 i designed and svg file but just couldnt implement the right way. Cleaning the SVG My biggest headache was the game board. I designed a beautiful, detailed map in Figma, but exporting it as an SVG just made things difficult i tried making i clickable but i didnt know how to and i found no totorials regarding this so i will probally just create a board using html and css or maybe look for solution using ai Current System Status At the moment i have decided to refractor to vue by advice of some friends and ai because it makes the backend easier but i will proablly change back, because iam realising Iam making the project more complex than it has to be also. Conclusion I just wasted time trying to learn new stuff an refractoring and trying to not use ai. I would like for some adivice which ai I should use and if I should stick with vue or stay with or change back to default also this made me reflect on what kind of perfectionist iam an I will probally wrap up this project in the next few days because I realised front end is not for me I will continue learning it but will soon work on either python or C project after. I will just add the missing features with Ai
Overview Today I worked on the front end an am basically finished with the easy stuff Iam now going to add the player icon and etc Front End I designed my front end and i think i can say that I am pretty good at basic JS/HTML/CSS and this project teached me alot Iam probally going to wrap it up in the next 2 post and focus on smth else. Monopoly repo After resarching a bit i found another open source monopoly game and my plan is now to copy some backend logic from it but i need to adjust it because his game is made to be playable localy and mine online so it will take same adjustment #Backend I added a Room system with the help of mutipile videos in which a random room code is generated and the server saves the generated room code making it possible for another use to insert it. The code will be if the round was ended.
Poorup — Production Ready Over the past few days I’ve been doing a full production-readiness pass on Poorup . Here’s what I worked on: Bug fixes — Fixed auction edge cases where a disconnecting player would leave a ghost bid, locking the game Memory leak prevention — Added a garbage collector on the server to clean up empty rooms after 10 minutes UI polish — Fixed text cut-off in buttons and settings toggles, improved layout consistency across screen sizes Layout centering — The game board is now properly centered vertically and horizontally in the viewport Accessibility — Added focus-visible styles for keyboard navigation New setting — Exposed the “Double rent” toggle in the UI (the rule already existed in the engine) Code quality — Added JSDoc comments to core server classes, removed dead code The game is now polished and stable. Im shipping it
Update: UI/UX Fixes, Auction System Fixes, and Property Manager Integration FInal This update focused on providing a better user experience and just making it less buggy Key Changes 1. UI/UX Improvements Refactored layout components to improve visual consistency. Updated navigation paths so it makes more sense for the User and is just more logical Adjusted CSS rules to improve the game across different screen sizes. 2. Auction System Fixes Addressed synchronization issues with the auction state. Fixed logical errors in bid processing and countdown timers. 3. Property Manager Integration Fixed the Property Manager feature, allowing users to track and organize their properties. Integrated the property database schema with the existing auction mechanisms. Created user views for listing and editing properties. So just new UI 4. General Bug Fixes & Stability Cleaned up left over parts of old system
Project Update: Bug Fixes Overview This phase was all about polishing the user experience, squashing gameplay bugs, and adding new repository documentation. After getting feedback I decided to change The whole UI Dynamic Theming & UI Improvements One of the major frontend improvements in this sprint was fixing the player icon chooser button functionality in the web interface. Fully redesignen the Front-End and more. I first of all started with replacing my .root with some new colors which are greenish. I also added some simple fade in/out animations to all Popups. Another bug was that it couldn’t quite fit in a screen of the size 1980 x 1080. I fixed that by making it possible to scroll down so everything you need for the game is shown on your screen. The way i tested it is by local hosting it and then pressin F12 in the browser and then you could adjust the size of the Window which was pretty neat. Also fixed a lot more of UI bugs such as weird buttons and more but this was the important stuff. Squashing Gameplay Bugs I knocked out two major bugs in this update: Trading System Fix: There was a bug where it wasnt possible for people to only request something without giving anything or make only money transactions so I fixed this. Special Property Popups: I resolved a rendering issue with the popups for special properties, specifically the Airports and Companies (Utilities). Now, when a player interacts with these tiles, the modal correctly pulls the specific data object and displays the unique rent calculations and purchase prices. Documentation Revamp I updated the README.md to ensure the decumentation was on point for anyone cloning the repo. I refactored and renamed SHOWCASE.md to Instructions.md . This provides a much clearer, step-by-step guide on how the game operates and how to get the local server running instead of just showcasing the Repo more. Conclusion The feedback was essential and really showed me how sloppy I worked it should now work perfectly even though i couldnt test it for 4 people
Poorup Redesign So after my last ship i read through all the reviews and have decided to continue this project even though i really didnt plan for that. So there were 3 addition people wanted. A new UI, being able to join random people, better Animations and a Dev mode to test in solo player possibly with mods. What did i do? So i first started with thinking of a new design route so i asked chatgpt for some references of a good design. I decided on making the Whole Ui pixellated similar to the Arcade style and fully redesingen the SVG witth and now iam going to go over it and adjust it to fit ours. Of course this took like around 6 hours but I use figma on desktop and the browser tracking of hackatime doesnt seem to work how do you like the new svg? Next Steps Next Steps i redesignen the Full Ui to fit this pexelated style and making sure it looks good
Poorup Redesign – Devlog #2 This phase was about continuing the complete redesign of the website, deciding on a UI theme, and implementing a new feature that I had wanted from the start but was not advanced enough to create before. New UI I am very proud to announce a complete redesign of the application. I decided to fully embrace a pixelated theme, and I personally think it looks great. It is genuinely one of the best UI systems I have ever designed. New Feature I decided to expand the trading system. You can now give out loans in exchange for premiums, equity, money, and more. This allows you to create fully customizable loans, such as: I give you $200 for 30% permanent equity in this spot. This means that you have to pay 30% less rent when you land on it and gain 30% of all rent paid on that plot. This is a system I have never seen in a Monopoly game, and I wanted to implement it from the start when I first had the idea for Poorup. New Feature #2 I have also decided to take the advice I was given and implement a room system. This allows players to join and create rooms, as well as make them public or private. I also added a quick-table feature that matches you with other people who have pressed the button, allowing you to play a quick round with random players. New Feature #3 I have created a complete profile system. You can now create a profile, view your statistics, win percentage, average money, and more. You are also able to create custom 32×32 icons to use while playing the game. New Feature #4 I also decided to add sounds and an open-source soundtrack I found called Pondering the Cosmos . which i think fits my new theme perfectly but maybe iam going to change it Next Step AI Bots The next Step will be adding bots but normal bots are boring they are just glofired search engines why i want to be a bit creative. I will use hackclub ai provider and give the bot a brain by combinging them with an AI like deepseek v4 flash this means the bot will be able to check how is he performing what are the most logical steps sell buy properties and trade and if wanted even chat with the user to make a deal would anybody like that?
Poorup Redesign – Devlog #3 This phase was about expanding the social side of Poorup, adding more depth to the game, and planning future systems that make every round feel more alive. Social, Rankings, Achievements I added a complete friend system. Players can search for unique usernames, send and accept friend requests, remove or block players, report users, invite friends to rooms, and view public profiles without leaving the lobby. Profiles now include statistics such as wins, win rate, games played, average money, bankruptcies, achievements, and match history. I also added global rankings for wins, win rate, games played, achievements, and other statistics. Rankings and Social are now independent tabs instead of modals, with wider layouts that use the available screen space more effectively. Achievements now have custom pixel-art and SVG icons, rarity levels from Common to Mythical, filters, dates, categories, and clickable detail modals. Mythical achievements are extremely rare and can trigger a server-wide announcement for every player. Easter Egg I added the hidden Parlor Patrol minigame. Pressing CTRL + P on the home screen opens a secret mode where you shoot down police helicopters, planes, and drones. It includes custom explosions, animations, sounds, score tracking, and a secret achievement. Global Events Global Events are rare events that affect every player instead of only the person who landed on a tile. They can be triggered by round conditions or Surprise cards and can last several rounds. Ideas include: Housing Bubble Pop Credit Freeze Inflation Spiral Bank Run Interest Rate Shock Airport Strike Energy Crisis Tax Scandal City Election Rent Control Tourism Boom Supply Chain Breakdown Events can combine with each other, create unexpected situations, and unlock secret achievements. I also want a global-event setting that is simply on or off, while event strength and duration scale with the round length. Rules Page I added a complete Rules tab designed like a pixel-art game manual. It explains the board, movement, properties, loans, cards, achievements, global events, social features, and settings. It uses an internal book-style scroll so the main application does not become a long scrolling page. Future Systems I am also planning a casino system using virtual money, with red, black, and green bets where the odds are not equal. Another planned feature is a fictional stock market connected to properties, countries, airports, utilities, and global events. Events could crash markets, increase rent values, affect airports, or create temporary investment opportunities. I also want to add unethical and outrages bank loans with high interest, strict repayment rules, and serious consequences. Music/sound icons I also added simple music and sound icons for the buttons instead of having the music on/off text Next Steps The next phase will be making these systems work together while keeping the game balanced, and also adding AI bots which utilise AI like deepseek v4 and so on so they able to actually judge the situation and think of possible ways for them to win. The aim is to use hcai to power them. I will also add normal BOTS as a fallback if my usage runs out
Poorup Redesign - Devlog #4 This phase was mainly about setting up codescene doing a full restructuing with the help of AI and fixing bugs and adding missing features. I also added a simple, gambling and stock market system. Bots I first started with setting up the initial idea of bots so to the UI and a bit of the backend logic for bots and how they will interact with the game iam nowhere finished and I havent tried it out yet. Codescene After checking out the github studentpack again after a while I saw codescene, which is a code reviewer similar to coderabbit. I struggled a bit with the Setup but after running an analysisi I noticed how abysmall my codebase really is and how its missing structure, archtiectuer and etc, for example sepearting certain getures from game logic.js and creating their own thread for it. I also setup a full pr pipieline which I can use with my AI agents which aim will be fixing my architecture, and finding bugs before i push them. bugs I ran Qwen 3.8 flash on my pr pipileine with codescene and let it work indepnedlty to full restructer my codebase so the results are better and I have better architectural design I also let it fix any bugs it found. Bugs I found While trying out the game i found mutipile BUGS one of them affecting my secret minigame palor patrol. For some reason I was losing hearts for no appearent reason. The reason behind it was that even though UI was hidden the helicopters were still flying through. For some reason the heart bug still exists afterwards and even the AI isnt able to find out what it is so Iam completating making architecture changes to it. #Gambling I added a smile gambling system where you can bet money on a roulete on red, black, and green I didnt add any animation for it as I found it unecessary and I also made sure iam legally clear to make sth like this Stock market I created a simple stock market tab and backend which allows people to buy indexes of a property and made sure to connect it with global events so global events can affect the stock market but that is nowhere near usable. Next Steps Iam going to let my AI continue improving my codebase with codescene and continue the Stock market and afterwards add the bots.
Poorup Redesign - Devlog #5 This phase was mainly about fixing all bugs still exisitng, refactoring further with codescene and letting AI run over my code, also fixed some small missing features and simple bugs myself. Choosing Icon I noticed a bug in which because of logic I made before setting up custom icons the programm mapped custom icons people created onto persets and blocked them so for example your icon had red in it, the game decided to map it onto the red preset in the backend blocking it but showing yours in game, this came because I never rewrote this section after introducing custom icons. Ownership icon Before this change owenship on board was only shown with a simple like quadrat in the top right corner of the tile in the color you picked this is also something left over from the old preset logic. I decided to make it so It shows a smaller version of the face of the player which makes it look a lot cleaner. Missing Buttons This was mainly because I let AI write to much of my code, the finical trading tab which is centered around equity and everything missed a dropdown to choose who you send the trade to and even the button to send the trade which was a dumb oversight on my end. I also added a simple backend system for the dropdown inside that modal to only show the propertys a person owns. Bots I also continued working on the bot system though this was mainly watching tutorials and brainstorming further Next Steps Fix last bugs, fully add bot system and make sure UI looks good to release the first beta test hopefully the next post will be the last
Poorup Redesign - Devlog #6 This phase was mainly about adding more depth to the player interactions, improving the bot system, and making the rankings feel more alive. Deal Negotiation I redesigned the deal flow so trades, loans, equity, and hybrid deals all work in the same way. When you receive a deal, a modal appears with accept and negotiate. If you close it, the deal does not get declined and stays inside the Finance rail. Both players can now see the same deal collapsed in Finance. The receiver can negotiate, while the sender can adjust or cancel the deal. You can open a full read-only view, change the parameters, and send the new version back. The server also checks old deal IDs so an outdated modal cannot change a newer deal. Sponsored Purchases I also added sponsored purchases. If a player cannot afford a property, they can ask the table for help. Other players can reserve contributions, and once the full amount is available, the buyer accepts and is forced to buy that exact property. The money is automatically returned if the request is canceled, the property changes owner, or a player disconnects. It is not a loan and does not create equity. Bots I continued improving the AI and no-AI bots. The bots now receive more context about the board, current obligations, loans, events, opponents, future rent risk, expected cash flow, and their own previous decisions.AI bots can now also counter trades, negotiate player contracts, choose debt rescue actions, and make auction decisions. If the AI provider runs out of credits or fails, the no api key AI takes over Rankings I added recent trend indicators to the ranking rows, so you can see if a player is moving up, down, or staying flat. I also added a seasonal ranking scope based on the current calendar season. Rules Fixes I also fixed the Double GO setting so landing exactly on GO now pays the boosted amount, while simply passing GO still pays the normal amount.TestingI expanded the tests and ran long bot campaigns with auctions, loans, casino, market, global events, sponsorships, and negotiations. The latest regression suite passes and the longer 2,500-game campaign had zero stalled games. Next Steps The next major step is making the bots simulate several complete future turns and improving long-term negotiation behavior. After that I want to add deeper browser testing and seasonal ranking rewards. Also to lazy to do screenshots of new UI so you will get everything in the next devpost
Poorup Redesign - Devlog #7 This phase was mainly about doing a full audit over the game, fixing bugs which were still hidden inside the server and UI, and making the whole project easier to trust before the next merge. Finalising Bots, adding, themes adding new suprise features and more. Themes I decided to create 5 more themes which will fully change the look of the game, for the 5 i decided on 5 directions first of light mode, and then the 4 seasons so summer,autumm, winter, and spring. These took quite some time to create but I think they came out quite decent though they still need cleaning up Ranking Seasons I have now added ranking seasons which are 1 month each if you manage to rank on the leaderbaord at the end of the season you get a special cosmetic(newly added system) and a special Title Cosmetics I added a full cosmetics system and the ranking system so you can now get cosmetics from 2 places, either by getting them at the end of the season form the leaderboard or by getting them from achievements Card Upgrade I also now added the features to upgrade your bank account, if you pay enough money you can upgrade your card for 1000$ this gives you a card with 5% cashback which is the Spaarkasse karte(german Bank) and the nex level is the amex black card wich give you 10$ cashback and amex points which you can use for flying. Gambling UI I also decided to now give the gambling UI an animation it now has the same kind of case opening animation as CS2 so the roulette which goes form right to left. Plane station card Also made it so that you can now use the airplanes to skip things so you can fly to another station but of course you will have to pay alot and you have to pay a landing fee. If a player owns an Airpot he can decide the flying fee himeslf and the landing fee which means he could extort people if he is smart enough Quick Table I did some changes to Quick Table as it used to create a new public room every time. It now checks the live public room directory first, joins the most suitable open table, retries if somebody fills it during the join, and only creates a new Standard-40 room when no table can be joined. Private room codes are never exposed and the server still makes the final decision. Favicon I also designed a quick little favicon which is Just a P with a box around it but it looks quite good Music Candidates I am now searching for new Music for each theme so music changes with the theme Next Steps Cleaning up the UI one final time trying everything out and finally realsing the Beta and promoting it on reddit.
Poorup Redesign - Devlog #8 this phase mainly about consolidating the backend and adding a New admin only dashboard which will allow to analyze things easier for balane patches and etc in the future. This Phase was written only by hand hence the long time, normally I would use AI to speed up the process but I wanted to get some practice in. Also added legal and TOS pages Backend I found mutipile bugs such as simple Game bugs to not so simple leackage problems and other stuff which took quite some time to fix by hand and this really shows how I will probally pause using AI for coding after this project for a while Admin Dashboard I created this Dashboard so I would be allowed to pracitally analyze everything from how certain things affect the game and for example analyze them to see if they need fixes, balances or even remove them entirly. I also added things like seeing a rough strucutre of where my player base is from. If anybody is abusing the game somehow or bot traffic. Tos Pages These took quite long and were quite the hassle but I did it. though i am debating jus tdeleting them as I couldnt fill them out entirley as certain information is needed which would then make them 100% fool proof I forgot I also updated the Snow Theme and added music for each theme with a small music player in the bottom left though I just noticed I placed the icons wrong should be a quick 2 line fix Next Steps do the last fixes finnaly test the AI bots as they are fully setup but not setup do some balancing and realese it The next post should really be the last. Hopefully.
Poorup Redesign - Devlog #9 this phase was mainly about adding some missing things fully balancing everything also used the new model jev from typesafe as it was a perfect fit for the task. Admin Dashboard I now added a section in the admin Dashboard fully centered around the Bots which allows for dropping in any provider and choosing the model and see the request if theyre failing or not and etc this took quite a while as I coded this myself again as I wanted to practice a bit though I still needed Ai help as Iam so trash at js Removing TOS pages As i mentioned in the last devlog i have now decided to remove the TOS pages as they were jst not good looking and not complete and not needed. Music system I decided to remove the music player and rather make it so 1 music track is there for each theme and my next step ix expanding the profile page to allow choosing another music track as 12 are available in total but only 6 are used rn. I also decided that I am going to move the Theme chooser somewhere else as people get no indicator rn to find it New Idea for the Future Also I had a great Idea which i can incoperate into this but after the next ship. Its training a custom ml model on all the matches played by people and then incoperating it in the game. Because essentialy it would be a custom AI/Bot that is able to play monopoly as good as possible new features I also added the option to download all the data cause i noticed its saved on the server and maybe smb wants to download it will then be in a json. I also added the option to add an recovery email, because my plan is to allow people to sign up without email but they still need an option to recover data if needed I also added the option to rovoke all otehr session tokens then the onnes youre logged into rn, so essentially log out of all other devices and server sessions Next steps Cleaning up Ai code and reading through it all, 1 or 2 adjustments in Ui for example the global event banner needs to be relocated or the graphs for match history need to remade. Also the ranking page needs a little redesing. The next one will be the LAST ONE cause i cant deal with stardance anymore all my projects are getting rejected for dumb reasons, so this will be the last devlog and if it does not get accepted iam relocating somewhere else.
Poorup Redesign - Devlog #10 Iam aware this phase is 30 hours this is just cause i used hella AI and didnt want to count it towards my payout. this phase mainly about finishing touches running mutipile tests suits playing some games and finishing some things also fixing Ui and redoing the Ui of the Music First of all I added music for each of the 6 theme with a secondary theme which you can select under account and preferences I also made it easier to spot the different themes as they were hella hidden to be honest. Deactivation of palor patrol Though i didnt want to this I needed to deactivate palor patrol as it was simply impossible to use I checked m code in detail used and really did everything but I couldnt find the bug which makes it unplayablle so as long as I cant manage to fix it I have to deacitvate it. Next Phase pushing everything on nest setting up a piepleine so nest automatticaly pulls everything I push onto main in my repo and finnaly realsing it with thhe bots for players to use.
Poorup Redesign - Devlog #11 (FUCK MY LIFE) I am geniunly so tired of this project and my life in general i was so busy in the last few days cause of school and after shool clubs. This phase was mainly about recoding the Bot engine by hand, and updating the stock market modal inside the game also added New Ui for theme chooser and music and also added more sound tracks. I also redid statistics tabs in profile by hand and added better match history tracking Bot engine To be honest to Bot engine was so much AI stuff that i genuinly didnt understand what it was build on and how that is why I decided to take some time to read and research all the papers its build on and how it works. I then rewrote large parts of it to improve it and also found mutipile bugs in the logic of how it works and how it assigns values New account and preferences tab I fully redid some parts of the accounts and prefences tab to now allow for easier choosing of themes and also worked on the music engine so the music loops and youre able to choose different music depending on the theme. #Statsics tab I redid the whole tab as I found it quite stacked with 12 boxes for statsics and decicd to now add internal tabs to make it look cleaner this was a quick 30 minute changes as I didnt change logic but just frontend Next Steps Hopefully shipping adding HCAI and testing the AI bots and further UI refinement on tablet UI and 1440px desktop cause these are 2 of the most weirdest sizes https://poorup.jeremy-d.hackclub.app/ also if anybody wants to check it our but it is nowhere near finished so dont expect anything
Devlog after ship So after getting hella positive feedback regarding poorup which i highly appreciate my aim is to now make it have an even better user experience and etc. why? cause from the feedback i got, there are 3 areas I need to tackle, UI, game logic which is to complex and the User experience including rules and etc, Full redesign of the ingame lobby So after getting feedback that the board was to smallwhich was kinda expected and that the whole game is just clutered which i also assumed would happen cause all the features dont fit into the game i have done the following. I have redesigned the full ingame lobby with a new layout further inspired by richup(didnt want to do this but they have the most optimial layout) I have also redone the whole entire admin window cause to be honest it was horrondous and hard to use, and also just some small changes all around full redesign of modals so after doing the lobby i have now decided to fully redo a lot of the modal to have a better layout and etc so they are way more user friendly and acttually easy to understand, this also included cutting alot of features from certain modals because they just made them to complex and hard to use Cards and airpots this was something i was orrignally planning to release in the last ship but i just decided to ship it with this one i have finnaly added the option to buy new bank cards which you can use to get benefits like cashback of 10% on purchsees like rent payment suprise cards and other stuff, and I also added the option to use airpots to fly from one point to another and allow players to set the prices, Bots After reflecting a bit on my ai usage for the bots i decided to fully plug the whole programm into a repo which visualises it to see if it checks out with my mental map and I noticed so much slop which I would have never noticed before, this includes the whole Bot logic which i have probally never looked at cause i knew i wouldnt be able to code them. Though i probally should have cause this is the biggest slop i have ever seen and It introduced so many bugs which the ai couldnt find Next steps Right now all these changes are locally and not on github which are around +17000 lines of code and my aim is to further clean this up and fully push it with a new domain which is alredy online but will be kept hidden. here are soem before and afters, the more clutterd ones are the befores and the simplifyed ones after
Rework #1 Now you could be asking yourself? What have i done in the last 8 days to not post? Well Iam nearly finished with the full rework off all UI, Bug fixing and introducing new features, Chart Engine So i redid the whole system for charts and decided to build my own, because though i had one which worked it looked horrendous and really didnt fit poorup, you can see the new chart engine in the screenshot Game history I redid the whole entire game history system, because to be honest it was heavily vibed including its Ui and while cheking it, it looked like trash so I sat myself down and worked tiresly to fully redo it, and I even implemented the new chart system into it, Modals, Modals, Modals So I REDID NEARLY EVERY SINGLE MODAL IN THE GAME to provide a better User experience this took hella long and while doing it i noticed i had hackatime tracking off, because i had been working on some personal projects, hence the reason I only posted now because I lost so many hours, #Next Features Well to be honest there really arent anymore features i can add, the only thing left is fixing bugs and preparing it for the release and advertising it on reddit
Ships:
Poorup Poorup is a real-time multiplayer board game inspired by Richup(Monopoly), playable entirely in the browser What did I make? A full multiplayer board game running on a Node.js server with Socket.IO for real-time communication. The client is pure HTML, CSS, and JavaScript, no frameworks which is stupid if I look back on it . Features include: Room-based lobbies with a shareable room code Full Monopoly-style rules: buying, renting, building houses and hotels, mortgaging, and trading Live auctions with a countdown timer when a property is declined Configurable game rules per room (double rent, vacation cash, even build, auction, mortgage, randomized turn order, no rent in jail) Reconnect support — if you disconnect mid-turn, you can rejoin and resume In-game chat Automatic room cleanup when everyone leaves What was challenging? Shared states across multiple clients. Every player action, rolling dice, buying a property, placing a bid, has to be read server-side, broadcast to everyone, and reflected correctly on each client without race conditions or desync. Getting that right, especially during edge cases, took a lot of work. Edge cases in disconnects. A player disconnecting mid-auction is a different problem than disconnecting on their turn, which is different from the host disconnecting entirely. Each case needed its own handling: timers need to be cleared, pending actions need to be resolved, and remaining players need to stay in a valid game state. and i need alot of time and a bit of AI to fix that for me. Building a complete game UI with vanilla CSS. No component library, no utility framework — every modal, toggle, property card, and animation is hand-written. Honestly needed a lot of AI help here. Probally should have used a libary if I look back at it but it was fun to do it in plain CSS also for anyone wondering why the favicon is the one from vite i never deleted it and i wasnt in the mode to redesign a new one and tried to use the board map but that didnt work for some reason. What am I proud of? The architecture. The game logic lives entirely in gameLogic.js and has no knowledge of sockets or HTTP. The server in server.js wires events to logic calls and broadcasts the results. That separation made the codebase much easier to debug than it would have been otherwise but i needed AI to implement the idea i had the idea but wasnt quite able to do it. How to test it git clone https://github.com/jeremy341/Poorup.git cd Poorup npm install npm start Then open http://localhost:8080 in two separate tabs or browser windows.
Project Update I didnt even notice but all the changes i did i the last patches never got shipped so this one is about the last to changes which were adding modals, creating new UI and removing AI code check it out https://poorup.jeremy-d.hackclub.app/
Poorup — Biggest Update to date I’ve given the project a major overhaul, from its visual identity and everything else. This is geninuly one of the best projects i have created and iam proud to announce it I first started Poorup 3 and 1/2 months ago as a project to get introcude into webdesing and since then i have created 4 more website and revesiting it really shows my growth. Of course Ai was used by even then I could really feel my growth What was challening i decide to stay on CSS, html, and js instead of transferring it into another language for a simple reason i wanted to test how far i can push these 3 languages( i was just to lazy to learn a new language) How I used AI AI WAS USED IN THIS PROJECT for debugging and coding no UI or art generation. AI was a substantial coding and debugging tool, especially for backend work, bot logic, and tricky multiplayer edge cases. I used CodeScene to identify code-health hotspots. I wrote many page-specific backend features myself, then used GPT/Codex to help debug or split some larger hotspot files into smaller modules. Ai was also used to fix bugs in the Ipad Ui I created Poorup’s frontend UI and its SVG and art assets myself. AI helped in coding but never touched art. I didn’t compose the soundtrack. I selected open-source and other openly licensed tracks; their sources and license details are in the audio credits . I also rewrote the Git history to make the repository cleaner, so the current commit log isn’t a complete record of the project’s development. Also after around the 6th or 7th devlog i turned ai traccking of as to not fraud myself hours So if needed deplete hours. What’s new in this patch UI Full ui rework of everything nothing was left out every single Ui elemt was redone by scratch, with upto 6 themse each with their own custom soundtrack and background, this was the largest wish people had wished for when they reviewed my game and iam so proud of the UI. Boards and multiplayer New 40 and Metro-52 boards, with custom visual themes. Public rooms and private rooms with shareable codes; people can join as guests. Configurable rules, including double rent, vacation cash, even building, and randomized turn order. A deeper economy system Bank loans, player-to-player loans, equity deals, and hybrid contracts, with collateral and default consequences. Sponsored purchases: one player can fund another player’s property purchase in exchange for an agreed share. Negotiating now youre able to negotiate all offers you get instead of accepting or declining on the spot you can also keep them on hold An optional stock market for all the quant bros(gamblers) casino so now youre able to gamble Social I also added a full social systems with achievements, friends inviting people to lobbys seeing match history and more, also added the option to create your own 16x16 user icon Events one of the biggest features I decided to add global events which appear under certain conditions like to many houses standing which should reference the 2008 housing crises i also added stock market crash and alot more. Also global events can also combine to create seacil ones Parlor patrol this was supposed to be a cool minigame while waiting for your friends but it doesnt work and i cant fix the bug for the life of me so you can test it out but it doesnt work correclty all svg assets for it exist...
|
1792849780.3860598
|
1792936180.3860598
|
|
70911
|
FitPulse by @Siyam | Stardance
|
Siyam
|
0
|
1.61
|
0
|
[]
|
[{"post_id": 81748, "ts": "202 [{"post_id": 81748, "ts": "2026-10-22T10:45:49Z", "hours": 1.6092, "text": "Created a heatmap to track activity.. Now i will add exercises."}]...
|
Title: FitPulse by @Siyam | Stardance
Devlogs:
Cr Title: FitPulse by @Siyam | Stardance
Devlogs:
Created a heatmap to track activity.. Now i will add exercises....
|
1792666033.9440894
|
1793270833.9440894
|
|
55794
|
Love Vada Pav by @teerth | Stardance
|
teerth
|
1
|
15.9
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-17T20:40:16Z", "hours": 14.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Presenting LOVE VADA PAV A game about reuniting the best couple in the universe through a set of time-bound minigames But beware! You have only 5 fried chilies (5 lives) and yes, you can chill till you have at least one fried chili but after that… youre fried!!!!! Jk you just lose the game, then you try again, till you can reunite the best couple in this universe. Cause this game is all about: LOVE. VADA. PAV.", "repo": "https://github.com/spiceTheCode/vadapav-ware", "demo": "https://teerthyatraaa.itch.io/love-vada-pav"}]...
|
[{"post_id": 81750, "ts": "202 [{"post_id": 81750, "ts": "2026-10-22T10:53:28Z", "hours": 1.9, "text": "NEW MINIGAME IN THE WORKS!! My potato bowl shoots potato balls so that they can be covered in besan (Batter) to be sent for frying!"}, {"post_id": 69809, "ts": "2026-09-17T20:24:58Z", "hours": 0.5717, "text": "READY TO SHIP!!! Thank y’all for being a part of the ver 1 of this game VADA AND PAV WILL RETURN IN DOOMSDAY?!?? Anyways spent the last few minutes making readme better and making a promo asset in godot itself. Also the name’s official now: LOVE VADA PAV!!!"}, {"post_id": 69760, "ts": "2026-09-17T18:51:58Z", "hours": 3.8256, "text": "FONT UPDATE These are the following updates Fixed Global Audio Issues Changed Font to something more fun Designed Winning and Losing Scenes We are so ready to ship, only readme remains"}, {"post_id": 68560, "ts": "2026-09-15T10:11:24Z", "hours": 4.6208, "text": "THIRD MINIGAME READY!!!!! I abso-dupso-lutely loved making this one, becuase I had to do everything myself from collision to dragging, and I loved it. Im nearing the completion of this game, I would love to see how y’all reach to my game… Also im working on adding some music and sound effects so that the game feels more like… well, a game. Cheers! 🥂 P.S. I didn’t take all of these 4.5 hours just to develop this minigame, a lot of it went into making winner and looser screens and making other minigames more fun!"}, {"post_id": 63411, "ts": "2026-09-07T07:17:35Z", "hours": 1.0461, "text": "2nd minigame complete! I added a bit more difficulty by making the player choose between burnt and unburnt vadas Click all the unburnt vadas before the timer hits 0!"}, {"post_id": 61397, "ts": "2026-09-04T09:11:50Z", "hours": 1.4147, "text": "Minigame 1 Ready!!!! and level screen! In the first minigame you have to collect 3 vadas to make the supreme triple vada pav I’m thinking of making the second minigame about picking cooked vadas from a pot! Cheers!"}, {"post_id": 59065, "ts": "2026-08-31T17:42:06Z", "hours": 2.4217, "text": "ARE YOU ALSO A PAV LOOKING FOR A VADA?? Probably not… No worries tho, you can stimulate that here!"}]...
|
Title: Love Vada Pav by @teerth | Stardance
Devlo Title: Love Vada Pav by @teerth | Stardance
Devlogs:
ARE YOU ALSO A PAV LOOKING FOR A VADA?? Probably not… No worries tho, you can stimulate that here!
Minigame 1 Ready!!!! and level screen! In the first minigame you have to collect 3 vadas to make the supreme triple vada pav I’m thinking of making the second minigame about picking cooked vadas from a pot! Cheers!
2nd minigame complete! I added a bit more difficulty by making the player choose between burnt and unburnt vadas Click all the unburnt vadas before the timer hits 0!
THIRD MINIGAME READY!!!!! I abso-dupso-lutely loved making this one, becuase I had to do everything myself from collision to dragging, and I loved it. Im nearing the completion of this game, I would love to see how y’all reach to my game… Also im working on adding some music and sound effects so that the game feels more like… well, a game. Cheers! 🥂 P.S. I didn’t take all of these 4.5 hours just to develop this minigame, a lot of it went into making winner and looser screens and making other minigames more fun!
FONT UPDATE These are the following updates Fixed Global Audio Issues Changed Font to something more fun Designed Winning and Losing Scenes We are so ready to ship, only readme remains
READY TO SHIP!!! Thank y’all for being a part of the ver 1 of this game VADA AND PAV WILL RETURN IN DOOMSDAY?!?? Anyways spent the last few minutes making readme better and making a promo asset in godot itself. Also the name’s official now: LOVE VADA PAV!!!
NEW MINIGAME IN THE WORKS!! My potato bowl shoots potato balls so that they can be covered in besan (Batter) to be sent for frying!
Ships:
Presenting LOVE VADA PAV A game about reuniting the best couple in the universe through a set of time-bound minigames But beware! You have only 5 fried chilies (5 lives) and yes, you can chill till you have at least one fried chili but after that… youre fried!!!!! Jk you just lose the game, then you try again, till you can reunite the best couple in this universe. Cause this game is all about: LOVE. VADA. PAV....
|
1792853626.0871577
|
1792940026.0871577
|
|
69796
|
Obliterator - Antweight Battle Bot by @Haiiitsme | Obliterator - Antweight Battle Bot by @Haiiitsme | Stardance...
|
Haiiitsme
|
0
|
8.53
|
0
|
[]
|
[{"post_id": 81754, "ts": "202 [{"post_id": 81754, "ts": "2026-10-22T11:25:59Z", "hours": 0.6061, "text": "Bristless!! I added some very spiky and long bristles to the back of my bot, to add a thick line of defense behind the bot, to protect it from hard hits while remaining extremely light, unlike a solid extention. Screw Switch A slot for the screw switch was also added, so i can turn the bot on and off from the outside, and ensuring that the switch cant accidentally be switched off in a battle. Thanks it! Pretty short Devlog, but thank you for reading! Hope you’re as excited for this build as i am! Hopefully it gets approved quickly as well!"}, {"post_id": 81437, "ts": "2026-10-21T09:11:51Z", "hours": 7.9256, "text": "First Devlog! New Project This is my new project, a 150g Antweight cobat robot with a flat body, an aggressive design, and a large horizontal weapon spinning at speeds of 25,000 rpm. This is in succession to Cat-aclysm, my prior combat robot, from which i learnt a lot and implemented into this one! Idea Most parts of this robot contrast Cataclysm, since i wanted to make something completely different, and also to fix all the features that malfunctioned or did not perform well in Cataclysm. A major feature that went very wrong in Cataclysm was its weapon blade, which kept on shattering on impact. This time, i ensured the blade would have a uniform spread of the pressure, and would not shatter instantly upon a hit. Designing The Weapon I began with designing the weapon blade on Fusion, and unfortunately forgot to track it. With lots of help from a friend, who thouroughly explained exactly how to design a perfect weapon blade using his helpful diagrams, which ive attached below! CADing the main components Next i imported all electronics and the weapon blade into a common Onshape document and lay them out where i saw fit. Then i made a rough sketch around them and built up. I added a hollow compartment to hold electronics, designed thick weapon struts, and quickly replaceable wheel guards. The wheels will be 3D printed this time, with O rings for extra grip. Plan for future If i have weight left from my 150g limit, i will be adding bristles to the back of the bot, since it was a very effective strategy used by Makers muse, which he has given permission to me to use. Thank you! Thank you for reading this devlog, it was pretty long, and i hope you enjoyed! I will be building this bot as soon as i get funding!"}]...
|
Title: Obliterator - Antweight Battle Bot by @Haii Title: Obliterator - Antweight Battle Bot by @Haiiitsme | Stardance
Devlogs:
First Devlog! New Project This is my new project, a 150g Antweight cobat robot with a flat body, an aggressive design, and a large horizontal weapon spinning at speeds of 25,000 rpm. This is in succession to Cat-aclysm, my prior combat robot, from which i learnt a lot and implemented into this one! Idea Most parts of this robot contrast Cataclysm, since i wanted to make something completely different, and also to fix all the features that malfunctioned or did not perform well in Cataclysm. A major feature that went very wrong in Cataclysm was its weapon blade, which kept on shattering on impact. This time, i ensured the blade would have a uniform spread of the pressure, and would not shatter instantly upon a hit. Designing The Weapon I began with designing the weapon blade on Fusion, and unfortunately forgot to track it. With lots of help from a friend, who thouroughly explained exactly how to design a perfect weapon blade using his helpful diagrams, which ive attached below! CADing the main components Next i imported all electronics and the weapon blade into a common Onshape document and lay them out where i saw fit. Then i made a rough sketch around them and built up. I added a hollow compartment to hold electronics, designed thick weapon struts, and quickly replaceable wheel guards. The wheels will be 3D printed this time, with O rings for extra grip. Plan for future If i have weight left from my 150g limit, i will be adding bristles to the back of the bot, since it was a very effective strategy used by Makers muse, which he has given permission to me to use. Thank you! Thank you for reading this devlog, it was pretty long, and i hope you enjoyed! I will be building this bot as soon as i get funding!
Bristless!! I added some very spiky and long bristles to the back of my bot, to add a thick line of defense behind the bot, to protect it from hard hits while remaining extremely light, unlike a solid extention. Screw Switch A slot for the screw switch was also added, so i can turn the bot on and off from the outside, and ensuring that the switch cant accidentally be switched off in a battle. Thanks it! Pretty short Devlog, but thank you for reading! Hope you’re as excited for this build as i am! Hopefully it gets approved quickly as well!...
|
1792860465.5572307
|
1793465265.5572307
|
|
58832
|
Hustlenix Music by @Lalith | Stardance
|
Lalith
|
1
|
116.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-22T11:44:50Z", "hours": 116.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Hustlenix Music v0.1 is ready to ship 🎧 10 months, a lot of code, and one questionable response to a music teacher later… This started because my school music teacher kept scolding me about my coarse singing voice. Most people would probably practice singing. I decided I was going to write music through code instead. My ego and my coding abilities apparently had other plans. 😭 That’s how I got into Strudel, a live-coding environment for making music. But somewhere along the way, I got a bigger idea. Instead of just writing compositions, why not build an entire music player around them? Something with a library, search, playback controls, and an editor, all wrapped in an interface that feels like an actual music app. That idea became Hustlenix Music . From a music experiment to an actual app The concept sounded simple enough: Strudel for the music, HTML, CSS, and JavaScript for the app. The implementation was another story. I wasn’t just trying to make a page that played audio. I wanted the experience around the music to feel complete, while keeping the ability to experiment with the compositions themselves. I also wanted the interface to feel familiar without making a straight copy of Spotify. I’ve been working on this for around 10 months. Not all that work made it into the devlogs, either. Some development time simply wasn’t recorded, so the logged hours aren’t a complete account of the project’s history. I also used Codex for a substantial part of the implementation, as disclosed in the project’s AI declaration. The goal was to build and finish the product, not pretend every line came directly from my keyboard. What’s in v0.1? The first beta includes: Six original instrumentals that users can listen to. Playback controls for play, pause, resume, and stop. Search to find music. A local library for the available tracks. A composition editor where changes can be previewed live. I’ve kept this release focused on original instrumentals. My experiments studying famous songs aren’t included in the beta. There’s plenty more I could add, but I don’t want the project stuck in development forever because I keep finding one more thing to tweak. Why ship it now? At some point, another feature isn’t as valuable as getting the current version in front of people. This beta is my first proper attempt at bringing the whole idea together: music made with Strudel, a music-player interface, and tools to experiment with compositions in one place. It’s not the final version of what I imagine Hustlenix Music could become. It’s the first version that brings the core idea into a usable product. And honestly, that’s a milestone worth reaching. What’s next? For now, I want to get this version out there, see how the experience holds up, and work out what genuinely needs improving. There will probably be bugs, rough edges, and ideas I’ll want to revisit. That’s part of shipping something instead of leaving it as an unfinished project. What began as a slightly ridiculous reaction to being criticised for my singing has turned into a project I’ve spent months building. I still can’t promise my singing has improved. But at least I built a music player. 💀 Hustlenix Music v0.1: let’s ship it. 🎵 Live demo: [https://hustlenix.github.io/strudelify/] 💻 Source code: [https://github.com/Hustlenix/strudelify]", "repo": "https://github.com/Hustlenix/strudelify", "demo": "https://hustlenix.github.io/strudelify/"}]...
|
[{"post_id": 81756, "ts": "202 [{"post_id": 81756, "ts": "2026-10-22T11:42:04Z", "hours": 0.685, "text": "Hustlenix Music v0.1: Ready to Ship 🎧 I think Hustlenix Music is finally ready for its first release! This project has been in the works for around 10 months, and it’s taken a lot longer than I originally expected. Not all the development time made it into the devlogs, but I’m happy with where it’s ended up. The v0.1 beta includes: 6 original instrumental compositions Play, pause, resume, and stop controls Music search A local library An editor where you can make changes to compositions and preview them live The main idea was to combine Strudel’s live-coded music with the experience of using a proper music player. I wanted something familiar to use, but with the ability to experiment with the music itself. For this beta, I’ve kept the focus on original instrumentals. My famous-song experiments aren’t included. A lot of the implementation was done with Codex, as explained in the project’s AI declaration. I’m shipping this version because I’d rather get the core experience out there than keep endlessly tweaking it without real feedback. This is v0.1, so there’s definitely more to improve. But for now, Hustlenix Music is ready to meet its first listeners."}, {"post_id": 81229, "ts": "2026-10-20T11:34:47Z", "hours": 4.8008, "text": "Devlog 3: Getting Ready to Ship v0.1 I think Hustlenix Music is finally ready to ship! 🎧 The v0.1 beta currently includes: Six original instrumental compositions Play, pause, resume, and stop controls Search for finding music A local music library An editor for previewing changes to compositions The goal for this first release is to get the core experience into people’s hands rather than keep adding features forever. One important detail: the beta focuses on original instrumentals. My studies of famous songs aren’t included in this release. There’s still room to improve the interface and the overall experience, but this feels like a good point to release the first version and see how it holds up outside development. Hustlenix Music started as an attempt to make music through code. Now it’s becoming a music player built around that idea."}, {"post_id": 80203, "ts": "2026-10-16T18:26:36Z", "hours": 0.8875, "text": "Devlog 2: Ten Months in the Making I’ve been working on Hustlenix Music for around 10 months, but not all of that work made it into the devlogs. Some of the time simply wasn’t recorded, so the logged hours don’t represent the entire development journey. I’m now getting close to shipping the first beta, and I’ve been working on the visual design. I want the interface to feel familiar to anyone who’s used a modern music streaming app, without directly copying Spotify’s design. The main challenge is balancing that familiar experience with what makes Hustlenix Music different: its Strudel-based compositions and built-in editor. I’m trying to make it feel like a music player first, rather than a coding tool with a music-player interface attached."}, {"post_id": 80195, "ts": "2026-10-16T17:30:46Z", "hours": 109.6989, "text": "Devlog 1: How It Started This project started because my school music teacher kept scolding me about my coarse singing voice. Naturally, my response was to try writing music through code. Because apparently, that was the reasonable option. 😭 I started experimenting with Strudel, a live-coding environment for making music. But then I had another idea: what if I built an entire music player around it using HTML, CSS, and JavaScript? That became Hustlenix Music. The interesting part isn’t just generating music with code. It’s building the experience around it: a library, search, playback controls, and an editor that lets you experiment with compositions. The goal is to make something that feels like a proper music app while keeping the music itself editable through Strudel. This is a much bigger project than I initially expected, but that’s how it started."}]...
|
Title: Hustlenix Music by @Lalith | Stardance
Dev Title: Hustlenix Music by @Lalith | Stardance
Devlogs:
Devlog 1: How It Started This project started because my school music teacher kept scolding me about my coarse singing voice. Naturally, my response was to try writing music through code. Because apparently, that was the reasonable option. 😭 I started experimenting with Strudel, a live-coding environment for making music. But then I had another idea: what if I built an entire music player around it using HTML, CSS, and JavaScript? That became Hustlenix Music. The interesting part isn’t just generating music with code. It’s building the experience around it: a library, search, playback controls, and an editor that lets you experiment with compositions. The goal is to make something that feels like a proper music app while keeping the music itself editable through Strudel. This is a much bigger project than I initially expected, but that’s how it started.
Devlog 2: Ten Months in the Making I’ve been working on Hustlenix Music for around 10 months, but not all of that work made it into the devlogs. Some of the time simply wasn’t recorded, so the logged hours don’t represent the entire development journey. I’m now getting close to shipping the first beta, and I’ve been working on the visual design. I want the interface to feel familiar to anyone who’s used a modern music streaming app, without directly copying Spotify’s design. The main challenge is balancing that familiar experience with what makes Hustlenix Music different: its Strudel-based compositions and built-in editor. I’m trying to make it feel like a music player first, rather than a coding tool with a music-player interface attached.
Devlog 3: Getting Ready to Ship v0.1 I think Hustlenix Music is finally ready to ship! 🎧 The v0.1 beta currently includes: Six original instrumental compositions Play, pause, resume, and stop controls Search for finding music A local music library An editor for previewing changes to compositions The goal for this first release is to get the core experience into people’s hands rather than keep adding features forever. One important detail: the beta focuses on original instrumentals. My studies of famous songs aren’t included in this release. There’s still room to improve the interface and the overall experience, but this feels like a good point to release the first version and see how it holds up outside development. Hustlenix Music started as an attempt to make music through code. Now it’s becoming a music player built around that idea.
Hustlenix Music v0.1: Ready to Ship 🎧 I think Hustlenix Music is finally ready for its first release! This project has been in the works for around 10 months, and it’s taken a lot longer than I originally expected. Not all the development time made it into the devlogs, but I’m happy with where it’s ended up. The v0.1 beta includes: 6 original instrumental compositions Play, pause, resume, and stop controls Music search A local library An editor where you can make changes to compositions and preview them live The main idea was to combine Strudel’s live-coded music with the experience of using a proper music player. I wanted something familiar to use, but with the ability to experiment with the music itself. For this beta, I’ve kept the focus on original instrumentals. My famous-song experiments aren’t included. A lot of the implementation was done with Codex, as explained in the project’s AI declaration. I’m shipping this version because I’d rather get the core experience out there than keep endlessly tweaking it without real feedback. This is v0.1, so there’s definitely more to improve. But for now, Hustlenix Music is ready to meet its first listeners.
Ships:
Hustlenix Music v0.1 is ready to ship 🎧 10 months, a lot of code, and one questionable response to a music teacher later… This started because my school music teacher kept scolding me about my coarse singing voice. Most people would probably practice singing. I decided I was going to write music through code instead. My ego and my coding abilities apparently had other plans. 😭 That’s how I got into Strudel, a live-coding environment for making music. But somewhere along the way, I got a bigger idea. Instead of just writing compositions, why not build an entire music player around them? Something with a library, search, playback controls, and an editor, all wrapped in an interface that feels like an actual music app. That idea became Hustlenix Music . From a music experiment to an actual app The concept sounded simple enough: Strudel for the music, HTML, CSS, and JavaScript for the app. The implementation was another story. I wasn’t just trying to make a page that played audio. I wanted the experience around the music to feel complete, while keeping the ability to experiment with the compositions themselves. I also wanted the interface to feel familiar without making a straight copy of Spotify. I’ve been working on this for around 10 months. Not all that work made it into the devlogs, either. Some development time simply wasn’t recorded, so the logged hours aren’t a complete account of the project’s history. I also used Codex for a substantial part of the implementation, as disclosed in the project’s AI declaration. The goal was to build and finish the product, not pretend every line came directly from my keyboard. What’s in v0.1? The first beta includes: Six original instrumentals that users can listen to. Playback controls for play, pause, resume, and stop. Search to find music. A local library for the available tracks. A composition editor where changes can be previewed live. I’ve kept this release focused on original instrumentals. My experiments studying famous songs aren’t included in the beta. There’s plenty more I could add, but I don’t want the project stuck in development forever because I keep finding one more thing to tweak. Why ship it now? At some point, another feature isn’t as valuable as getting the current version in front of people. This beta is my first proper attempt at bringing the whole idea together: music made with Strudel, a music-player interface, and tools to experiment with compositions in one place. It’s not the final version of what I imagine Hustlenix Music could become. It’s the first version that brings the core idea into a usable product. And honestly, that’s a milestone worth reaching. What’s next? For now, I want to get this version out there, see how the experience holds up, and work out what genuinely needs improving. There will probably be bugs, rough edges, and ideas I’ll want to revisit. That’s part of shipping something instead of leaving it as an unfinished project. What began as a slightly ridiculous reaction to being criticised for my singing has turned into a project I’ve spent months building. I still can’t promise my singing has improved. But at least I built a music player. 💀 Hustlenix Music v0.1: let’s ship it. 🎵 Live demo: [https://hustlenix.github.io/strudelify/] 💻 Source code: [https://github.com/Hustlenix/strudelify]...
|
1792770681.3100314
|
1792857081.3100314
|
|
69491
|
Pearl Sandbox by @CraftingHERO | Stardance
|
CraftingHERO
|
1
|
23.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-22T12:09:22Z", "hours": 23.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Pearl Sandbox is an interactive web-based physics simulation in which you can drop shiny pearls into a three-dimensional glass box and observe their realistic behavior. Using intuitive sliders and controls, you can adjust and experiment with parameters—such as the size of the box, the number of pearls, colors, and physical interactions—in real time. The project serves as an illustrative experiment demonstrating how modern 3D graphics and physics systems can be implemented directly within a web browser, without the need for any additional installations.", "repo": "https://github.com/CraftingHERO28/pearl-sandbox", "demo": "https://craftinghero28.github.io/pearl-sandbox/"}]...
|
[{"post_id": 81758, "ts": "202 [{"post_id": 81758, "ts": "2026-10-22T12:02:29Z", "hours": 5.0453, "text": "Transitioning from Version 4 to Version 5, the Pearl Sandbox has received a massive upgrade focusing on total user customization and much more fluid camera controls. The most exciting new addition is the expanded control menu, which now comes packed with dynamic sliders that let you tweak the entire simulation on the fly. You can now adjust the size of the glass box to give your pearls more or less room, change the maximum pearl limit to handle denser particle stacks, and fine-tune exactly how many pearls spawn with a single click. Alongside these powerful new settings, a fresh color option has been added to the palette to give your pearls an extra splash of style. Finally, camera navigation got a major quality-of-life overhaul: the top-right orientation gizmo cube is now fully interactive, allowing you to directly grab and rotate the mini cube to seamlessly sync and spin the main 3D camera view around your sandbox."}, {"post_id": 80977, "ts": "2026-10-19T14:01:31Z", "hours": 6.3625, "text": "In Version 4 of the Pearl Sandbox, the simulation feels much more responsive and satisfying to play with. The biggest visual change is that pearls no longer just drop from the ceiling in random spots. Instead, wherever you click on the glass box—whether it’s the top, the side walls, or near the bottom—the pearls now spawn right at your cursor position and burst inward into the box. The main hurdle in this update was getting the box boundaries and click detection right. In earlier tests, fast-moving pearls would glitch out and fall right through the glass walls, or spawn halfway outside the box. To fix this, all six sides of the glass box are now completely solid, keeping every single pearl trapped inside even when dozens are bouncing around at once. Another challenge was making sure the pearls shoot inward away from the wall you click on rather than just dropping straight down. Once that was dialed in, adding a small collapsible menu overlay and the 3D orientation gizmo in the corner really helped tie everything together, making camera navigation feel smooth while keeping the focus on the bouncing pearls."}, {"post_id": 80121, "ts": "2026-10-16T09:09:20Z", "hours": 3.8361, "text": "In version 3 of the Pearl Sandbox, the interactivity of the 3D environment is significantly expanded. While the pearls in the previous version were statically predefined, this iteration introduces a click function: each mouse click spawns a cluster of new pink pearls in the upper section of the transparent 3D cube. These spheres fall from the ceiling; however, since the walls are not yet solid, the pearls pass right through them. The ability to freely rotate the camera using the mouse is also retained, allowing users to observe the action from any angle. The next stage of development will refine the spawning mechanism—moving away from a fixed origin at the ceiling to a system that uses raycasting to spawn pearls exactly where the user clicks on the box—with further updates to follow, including UI menus, color customization options, and a 3D orientation cube."}, {"post_id": 79606, "ts": "2026-10-14T18:02:47Z", "hours": 4.6403, "text": "I’ve changed the setup: instead of the previous 2D, there is now a 3D space where you can view the scene and aditionally you can actually rotate the view. However, you can’t spawn spheres yourself; instead, there are some pre-existing ones. They are currently falling through the walls because I haven’t managed to create solid, transparent walls yet."}, {"post_id": 79325, "ts": "2026-10-13T15:03:28Z", "hours": 3.1267, "text": "The initial release of the Pearl Sandbox project is a lightweight 2D prototype built entirely with HTML, CSS, and plain JavaScript. Designed to test core interaction and physics before moving into a full 3D space, this version uses an HTML canvas element to render colorful pearls within a bounded square box. Simple physics calculations handle continuous gravity, wall bounce dynamics, and basic velocity damping to make the movement feel natural. Players can interact directly with the simulation by clicking anywhere on the screen to instantly spawn clusters of pearls that fall, bounce off the walls, and settle at the bottom. As the project continues to evolve, these foundational mechanics will be expanded into a complete 3D environment."}]...
|
Title: Pearl Sandbox by @CraftingHERO | Stardance
Title: Pearl Sandbox by @CraftingHERO | Stardance
Devlogs:
The initial release of the Pearl Sandbox project is a lightweight 2D prototype built entirely with HTML, CSS, and plain JavaScript. Designed to test core interaction and physics before moving into a full 3D space, this version uses an HTML canvas element to render colorful pearls within a bounded square box. Simple physics calculations handle continuous gravity, wall bounce dynamics, and basic velocity damping to make the movement feel natural. Players can interact directly with the simulation by clicking anywhere on the screen to instantly spawn clusters of pearls that fall, bounce off the walls, and settle at the bottom. As the project continues to evolve, these foundational mechanics will be expanded into a complete 3D environment.
I’ve changed the setup: instead of the previous 2D, there is now a 3D space where you can view the scene and aditionally you can actually rotate the view. However, you can’t spawn spheres yourself; instead, there are some pre-existing ones. They are currently falling through the walls because I haven’t managed to create solid, transparent walls yet.
In version 3 of the Pearl Sandbox, the interactivity of the 3D environment is significantly expanded. While the pearls in the previous version were statically predefined, this iteration introduces a click function: each mouse click spawns a cluster of new pink pearls in the upper section of the transparent 3D cube. These spheres fall from the ceiling; however, since the walls are not yet solid, the pearls pass right through them. The ability to freely rotate the camera using the mouse is also retained, allowing users to observe the action from any angle. The next stage of development will refine the spawning mechanism—moving away from a fixed origin at the ceiling to a system that uses raycasting to spawn pearls exactly where the user clicks on the box—with further updates to follow, including UI menus, color customization options, and a 3D orientation cube.
In Version 4 of the Pearl Sandbox, the simulation feels much more responsive and satisfying to play with. The biggest visual change is that pearls no longer just drop from the ceiling in random spots. Instead, wherever you click on the glass box—whether it’s the top, the side walls, or near the bottom—the pearls now spawn right at your cursor position and burst inward into the box. The main hurdle in this update was getting the box boundaries and click detection right. In earlier tests, fast-moving pearls would glitch out and fall right through the glass walls, or spawn halfway outside the box. To fix this, all six sides of the glass box are now completely solid, keeping every single pearl trapped inside even when dozens are bouncing around at once. Another challenge was making sure the pearls shoot inward away from the wall you click on rather than just dropping straight down. Once that was dialed in, adding a small collapsible menu overlay and the 3D orientation gizmo in the corner really helped tie everything together, making camera navigation feel smooth while keeping the focus on the bouncing pearls.
Transitioning from Version 4 to Version 5, the Pearl Sandbox has received a massive upgrade focusing on total user customization and much more fluid camera controls. The most exciting new addition is the expanded control menu, which now comes packed with dynamic sliders that let you tweak the entire simulation on the fly. You can now adjust the size of the glass box to give your pearls more or less room, change the maximum pearl limit to handle denser particle stacks, and fine-tune exactly how many pearls spawn with a single click. Alongside these powerful new settings, a fresh color option has been added to the palette to give your pearls an extra splash of style. Finally, camera navigation got a major quality-of-life overhaul: the top-right orientation gizmo cube is now fully interactive, allowing you to directly grab and rotate the mini cube to seamlessly sync and spin the main 3D camera view around your sandbox.
Ships:
Pearl Sandbox is an interactive web-based physics simulation in which you can drop shiny pearls into a three-dimensional glass box and observe their realistic behavior. Using intuitive sliders and controls, you can adjust and experiment with parameters—such as the size of the box, the number of pearls, colors, and physical interactions—in real time. The project serves as an illustrative experiment demonstrating how modern 3D graphics and physics systems can be implemented directly within a web browser, without the need for any additional installations....
|
1792857048.4945257
|
1792943448.4945257
|
|
17993
|
RPi 5 Robot Arm by @nirvaan | Stardance
|
nirvaan
|
0
|
1.49
|
0
|
[]
|
[{"post_id": 8176, "ts": "2026 [{"post_id": 8176, "ts": "2026-06-13T16:56:29Z", "hours": 0.4375, "text": "What have I done so far: Added the Gemini AI provider Made a go to object function so the pan/tilt kit can move to the right angle of the object"}, {"post_id": 8133, "ts": "2026-06-13T16:03:56Z", "hours": 1.0511, "text": "What did I do: wired up the project wrote the basic code to test servos and the camera"}]...
|
Title: RPi 5 Robot Arm by @nirvaan | Stardance
De Title: RPi 5 Robot Arm by @nirvaan | Stardance
Devlogs:
What did I do: wired up the project wrote the basic code to test servos and the camera
What have I done so far: Added the Gemini AI provider Made a go to object function so the pan/tilt kit can move to the right angle of the object...
|
1792712838.887793
|
1793317638.887793
|
|
57942
|
My website by @nesix | Stardance
|
nesix
|
0
|
1.49
|
0
|
[]
|
[{"post_id": 81763, "ts": "202 [{"post_id": 81763, "ts": "2026-10-22T12:47:41Z", "hours": 0.4589, "text": "did some formating… looks like something from the early days of the internet… but thats fine… ill try to add some javascript, but idk how well that will go as ive never done any and it looks complicated"}, {"post_id": 81556, "ts": "2026-10-21T17:54:54Z", "hours": 1.0283, "text": "Made the base of the website, all the text that will be used is set up, now i have to format it properly and also add some pictures"}]...
|
Title: My website by @nesix | Stardance
Devlogs:
Title: My website by @nesix | Stardance
Devlogs:
Made the base of the website, all the text that will be used is set up, now i have to format it properly and also add some pictures
did some formating… looks like something from the early days of the internet… but thats fine… ill try to add some javascript, but idk how well that will go as ive never done any and it looks complicated...
|
1792730925.4651828
|
1793335725.4651828
|
|
69636
|
BetterLectio Extension by @jonbng | Stardance
|
jonbng
|
1
|
11.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-22T13:05:59Z", "hours": 11.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Hey everybody! Just shipped a new version of BetterLectio Its a browser extension that improves the ui and ux of Lectio, the school platform many schools in Denmark use. It completely redesigns most features such as messages, schedule, homework and assignments PLEASE PLEASE read the stuff on the link when you click try project :) Unfortunatly you cant actually try the real browser extension unless youre a danish student as it requires a Lectio account from an official school but ive added some comparison images to the website so you can see the difference it makes. Its quite a big upgrade. This project has probably taken me HUNDREDS of hours, i just havent really counted them correctly with hackatime but oh well Right now the project has around 2,000 monthly active users which is a really great milestone i’m quite proud of", "repo": "https://github.com/jonbng/betterlectio", "demo": "https://betterlectio.dk/stardance"}]...
|
[{"post_id": 81764, "ts": "202 [{"post_id": 81764, "ts": "2026-10-22T12:55:37Z", "hours": 0.8367, "text": "Fixed a critical issue causing hundreds of people to not be able to read their message on Lectio The fix rolled out well tho and luckily most Danish people have autum holiday at the moment so it wasnt that bad"}, {"post_id": 79506, "ts": "2026-10-14T10:53:54Z", "hours": 9.87, "text": "I have further developed the BetterLectio extension, adding several new features such as homework status sync, different user themes, referral logic, a lot of customizability of the extension, a feedback system where users can message us and just ongoing maintainance as Lectio changes the format of the page content."}]...
|
Title: BetterLectio Extension by @jonbng | Stardan Title: BetterLectio Extension by @jonbng | Stardance
Devlogs:
I have further developed the BetterLectio extension, adding several new features such as homework status sync, different user themes, referral logic, a lot of customizability of the extension, a feedback system where users can message us and just ongoing maintainance as Lectio changes the format of the page content.
Fixed a critical issue causing hundreds of people to not be able to read their message on Lectio The fix rolled out well tho and luckily most Danish people have autum holiday at the moment so it wasnt that bad
Ships:
Hey everybody! Just shipped a new version of BetterLectio Its a browser extension that improves the ui and ux of Lectio, the school platform many schools in Denmark use. It completely redesigns most features such as messages, schedule, homework and assignments PLEASE PLEASE read the stuff on the link when you click try project :) Unfortunatly you cant actually try the real browser extension unless youre a danish student as it requires a Lectio account from an official school but ive added some comparison images to the website so you can see the difference it makes. Its quite a big upgrade. This project has probably taken me HUNDREDS of hours, i just havent really counted them correctly with hackatime but oh well Right now the project has around 2,000 monthly active users which is a really great milestone i’m quite proud of...
|
1792857267.2702036
|
1792943667.2702036
|
|
52744
|
Context Forge by @vxyzln | Stardance
|
vxyzln
|
0
|
62.7
|
0
|
[]
|
[{"post_id": 81772, "ts": "202 [{"post_id": 81772, "ts": "2026-10-22T13:15:41Z", "hours": 4.16, "text": "Devlog#33 - Greeting Everyone ! Tl;DR - i spent quite a few hours working on makinf cf understand the repo better , finding th right info and letting the user to inspect a codebase before making changes. like searching for func what it depend on etc. Work : One thing i’ve been thinking abt is that when working on ap project that we can we see what things happend in the repo and where things are and what would i need to look for when changin something etc. . A So lot of work went into connecting some pieces and making sure cf gives reliable info and instead of the sqlite database dat Things done : cf can now check the rpeo and its analysis readiness. this helps bcz it can identify configuration problems instead of discovering them after halfway through. Improved the way cf finds specific symbols in a codebase of a project. the idea was to make it easier to locate and see where a func or a class or other element lies. without having to search everything manually. worked on retrieving relevant source excerpts and checking whether the info is still reliable in the current state of the repo/codebase as there is no use of having old data . added the git navigation capabilities so cf can work with arep changes and git’s context withut modifying the repo code. A MAJOR THING - cf can now bring imp repo info , evidence, other relevant things to help user see the codebase state before making a mistake or making changes to the code. Alongside these made some minor improvements lke more consistent error handling and auditing things etc. and also checking these minor things didnt broke any other things. these kinda things look boing but are nessecary/needed. i dont want cf to be one of the project where u give features without making the existng ones better. i want it to be better and useful for users when working on a large codebase etcetc. Honestly , i’ve had shipped this way earlier if i wasnt slacking off and exams didnt came i my way but we are now in the Last 10 days of Sd. i have a quite things in mind which i need to complete this before shippins so focus on that or some days and the i will ship it. ALso the time on this devlog is small bcz i had accidentally deleted the hackatime config(or file whatevery u want to say) and i didn’t noticed it for quite a few time and then today i relaized when i open my hackatime dashboard. So this is the last time that was logged. I will setup before writing a next devlog . So open to ur thoughts on the cf project and comment ur thoughts. ALso plz leave a like if u like m project !!!!!!!!!!!!"}, {"post_id": 81248, "ts": "2026-10-20T13:51:17Z", "hours": 8.2864, "text": "Devlog#32 - Greeting Everyone ! TL;DR - I spent quite some time making Context Forge more reliable under the hood. The focus was on improving repository analysis, CLI usability, and ensuring that the memory system stays consistent with the actual codebase. Work - I wanted to make cf more than js a tool that scans repo once and stores some info. i wanted to make it useful in real dev workflow or like for someone like me who is making many projects and can sometimes lose trace of what will happned to the codebase. HEre’s what i worked on for these 8h spread across some days. Improved repository analysis and persistence so that the stored knowledge remains consistent and can be reused across different runs. Strengthened incremental analysis to handle added, modified, and deleted files more reliably, reducing the chances of outdated information sticking around. Worked on retrieval and relationship handling to make results more predictable and easier to trace back to the actual source code. Improved the CLI experience, making it easier to inspect repository information and understand what Context Forge currently knows. Refined error handling and diagnostics so that failures are easier to investigate instead of leaving me guessing about what went wrong. Expanded the test coverage across the core systems to catch regressions and make sure that improvements in one area don’t quietly break another. One of the trickkier parts was that the stored repo info actually reflected the current codebase. it’s easy to get things on fresh analysis but things get more complicated when files change , disapper or contain info that cannot bre resolved cleanly. I had to spend time thinking abt edge cases to. a lot work was for strengthing the base the foundation , some improvements i made aren’t visibe ut matter when u want cf to behave properly across multiple projects. Yeah so there is more to build and it was a solid step for cf i would say so. Also SD getting ending in 10 days and i have a lot in mind and i need to ship quick so there would be a lots of commits and hrs or the upcoming 2-3 days as i will grind as much as the time i would get . So leave ur thoughts in the comments if u have any and plz like the project (image context : i ran the cf . command on the cf repo itself and this was its answer)"}, {"post_id": 80616, "ts": "2026-10-18T09:57:53Z", "hours": 4.5992, "text": "Devlog#31 - Greeting Everyone ! TL;DR - I spent time strengthening Context Forge’s core memory and retrieval systems, making repository knowledge more reliable and useful. I also improved how the project handles changes, retrieves relevant information, and exposes its capabilities through the CLI. Work - I wanted to move beyond simple analyzing repo and make cf better at remembering, understanding and retrieving repo knowledge. Here what i did : Strengthened how repository information is stored so files, symbols, and relationships remain available even after restarting the application. Improved how Context Forge handles added, modified, and deleted files, keeping stored knowledge aligned with the actual repository and preventing outdated information from lingering. Strengthened the way relevant files, symbols, and relationships are found and ranked, making results more predictable and consistent. Improved the ability to trace retrieved information back to repository evidence and understand why particular results were selected. Added the cf command as a shorter alternative to context-forge , while preserving the existing command and its behavior. Expanded the CLI with commands for inspecting repository status, memory, files, symbols, references, and relationships, making it easier to explore what Context Forge knows. Improved operational error handling, logging, and diagnostics, making failures easier to understand and helping keep the overall experience more predictable. So yeah did so many things It’s been a while since the Great Pivot / I took some time work through these as i also had to check whether there is some code of the things iripped off in the great pivot. the time went here on working through these features properly, strength the exisiting foundationand make cf more relaible and now moving onto the next things. So leave ur thoughts in the comments and plz leave a like"}, {"post_id": 79279, "ts": "2026-10-13T09:41:19Z", "hours": 2.2675, "text": "Devlog#30 - Greeting Everyone ! - THE GREAT PIVOT Work - Context forge is now moving away from being a generation based tool and becoming a deterministic agent memory foundation. now the rtransition is done cleanly and now i am working ahead on the current foundation but new features. work done - completed the changed direction of context forge from the old provider and generation system to a repo intellegence system removed the ollama integration, provider stack. runtime configuration and the dependencies that came with them. the core should now work without depending on LLM or external APIs refactoredthe application services, task understanding, context slelction, ranking and CLI to fit the new direction. kept the important foundation like SQLite storage , AST based analysis, repo fingerprints, inremental file change detection and evidence based context rtrieval added architecture tests for offline operation , deterministic ranking, file change detection and making sure the context output has proper evidence cleaned up all the old tests which were not needed and deleted the whole files which weren’t needed in the future . Today was mostly about get ting the big transition properly finished. So for the past days, I had some exams and was not happy with the behavior of Olama, of its undeterministic behavior. So I took this step. I did not change the base foundation. I just changed the overlying architecture, the Olama ones, and removed everything that was made that was not needed. So the commit of today is very large, like 7,000 lines removed, and 1000 lines written. I made one big commit for the entire transition instead of splitting this architectural layer into multiple commits. Transform context force into a deterministic agent memory foundation. I also cleaned up the extra local branches and checked that main was synced with GitHub. Now I’m moving towards a memory vault kind of thing. I have to build on what already exists instead of rewriting everything again, improve the memory idea of foundations, add the shorter commands. Yes, so yeah, this was a pretty big change for our project. There was still a lot to do, but at least reaction is much cleaner now. Hope you like the project and please leave your thoughts or feedback in the comments. To be completely transparent, I used AI assistance to help me safely untangle and delete parts of the old architecture that were tightly coupled. As a student developer handling a complex refactor alone, trying to manually map out every single breaking change across thousands of lines got overwhelming, and I needed the help to get it done cleanly. No regrets it got the job back on track, and the codebase is in a much healthier place. With the cleanup done and main fully synced, I’m now shifting focus toward building out the new deterministic memory vault and refining the short-form CLI commands for AI agents. Show writer shipwrights. Please don’t wreck my project. Hope you like the new direction! Let me know your thoughts or feedback in the comments below."}, {"post_id": 72726, "ts": "2026-09-23T16:27:26Z", "hours": 0.3028, "text": "Devlog#29 - Greeting Everyone ! STARDANCE IS GETTING EXTENDED YAYYY!!!!! No TL;DR today for short work Things did today in short time added clean generation outuput handling added cli error handling and seperated output from errors connected generation to the persisted project added test for the same also spent some time on editing some test generated bcz they werent like tha lvl Sp today short work due to other school work coming in. Leave ur thoguhts in the comments and pl like it if u think it is good and should get real appreciation."}, {"post_id": 72306, "ts": "2026-09-22T17:00:47Z", "hours": 1.1167, "text": "Devlog#28 - Greetings Everyone ! TL;DR - Added proper ollama checking and validation plus a runtime cli. Generation now safely uses fresh persisted repo intelligence instead of re-analyzing the project everytime Long - Problems : so when doing today’s work the problems that i wanted to fix was that the generation workflow was still too dependent on live repo analysis instead of using the persisted intelligence. 2nd there was no way to verify ollama itself is available or not. like ollama runtime and is a model available or not. runtime failures needed to stop generation cleanly and not throw a bunch of error a user neds to debug. we needed to preserve provider behaviour and avoid breaking the previous architecture i built the generation one. also the generation path needed clear boundaries between runtime validation, provider execution and final output and etc etc. It sound much but the implementation was simple as ig for me. things done today to solve the problems - added ollama runtime inspection to check local runtime and requested model are available added dedicated runtime cli commd for checking the state of the runtime and model independently changed the generation to load persistd repo intellegence insteasd of it everytime doing a fresh analysis as it would be bad for it to make new things for everytime a cli is ran added cache freshness validation so generation refues stale repo intellegence added regression covergae proving that a generation uses the persistent project and doesnt starts the analyzer again made a foundation kinda thing for a clean generationresponse to cli output boundary with remainng output workflow continuing afterwards added test for the features added Also some of the current changes may not be sen on the github repo bcz i havent comitted some changes as they are a part of a feature and i commit like a feature and the tests related to it for better commits ig . Now what we did to solve the problems and how i felt when solving them - . the generation pipeline is now ready to build the dev facing output worflow or like a user workflow on top of these things the previous architecture i made. i found addng the flags to main.py file easy but then adding the cache checking and the regression covergae and the generationresponse to cli output boundary a bit challenging . So today only this much. Hope u like my project and plz comment for feedback. also a mention to @CT5 on slack for telling me to added problem and solution section in my devlog for better project experii\\ence."}, {"post_id": 71819, "ts": "2026-09-21T16:41:30Z", "hours": 2.8994, "text": "Devlog#27 - Greetings Everyone ! TL;DR - Context Forge can now remember the repo state update it s understanding when things change and provides a proper cli for those who use it. It has ig aroung 6 funcs which u can read below. The work also made the internal state much easier to inspect and debug while keeping the existing thing intact. Long - SO this Devlog is after a long time ig. I was giving 5-10 mins t the project to not lose my habit and the streak also. But today my exams got over so now i can focus on the project. STARDANCE is ending soon so i need to hurry up and complete this asap. So basically did a lot of main writing for cli functionality. cf* - context forge (too lazy to write it out everytime) things did in those past days - made repo analysis persistent instead of starting from scratch everytime the cf* is ran. added file fingerprintng and change detection for smart analysis for a smart project. imporoved how changed files affect relationships and project info. added a proper dev workflow through the CLI as it is a main part and added commands like analysis and generation commands added task input , config handling, clenaer error behaviour for the better contxt of it added command to inspect repo state cache state project info and diagnostics or i should say Pre-Rendered Excuses Generation fixed issues around cache freshness and changed fiel reporting added tests for the new functionality and made sure the existing workflow stayed intact for cf* refactored the fingerprinting logic so it culd be shared cleany by the analyzer and the Cli i made for cf* So this much for the past these days. Now the thing is slowly coming like a real version. Its complexity is very high ,atleast for me . Bcz i made many py projects and this is the most challenging one so far but it shift me into the flow state after sometime so yeah it is a good challenge. It was like based on my problem i faced when i was vibecoding in the early days js to do timepass . But now when u can make it , it feels incredibale. SO yeah it is good. Yes but Currently i see models like astra and fable come out with much more context lenght and etc. so my product is not needed for them for but is a good fun project on thr side. These new models are good but havent tried them but will try them fter i get some freetime after Stardance. as stardance is my first and last ysws soi it was a great experience. Also i did many of the things in neovim like editing some files and etc but i couldnt settedup hackatime with it so like around 1-1.5 h of extra work was untracked on hackatime but it was ok. I was seeing the primeagen video of neovim and wanted to try it out so i did and learned some basics and therre is a very stepp learning curve in it . ALso tried out lazyvim but not my style . So wil pause the vim learing for a few days and finish the prject cf asap. Sorry for this Yapp Session but dumped everything i had for these past few days. SO plz leave ur review in the comment and plz like it and rate it good."}, {"post_id": 67921, "ts": "2026-09-14T07:08:45Z", "hours": 0.4872, "text": "Devlog#26 - Greeting Everyone ! No TL;DR as short work work today - Added deterministic evaluation baseline storage and serialization. Added validation, aggregation, coverage, and persistence support. Added comprehensive tests and maintained a clean, validated implementation. So, this much today only leave your thoughts in the comments/"}, {"post_id": 67491, "ts": "2026-09-13T16:35:20Z", "hours": 0.2508, "text": "Devlog#25 - Greeting Everyone ! No TL;DR as small work today. things accomplished today - Added evaluation aggregation and baseline regression tracking Added validation for duplicate cases and regression tolerance, with tests for the same. Committed implementation and tests as focused changes. Leave ur thoughts in the comments."}, {"post_id": 66802, "ts": "2026-09-12T18:07:31Z", "hours": 0.7114, "text": "Devlog#24 - Greeting Everyone ! TL;DR - Added evaluation for both context selection and final context quality, covering correctness, budget limits, and deterministic behavior. Added focused tests to validate the complete evaluation flow. Long - So exams are going on so can’t do long hour session. Was planning to add manythings over few days but it would stretch for about more days. Things did - Added context-selection evaluation against expected entities using precision recall f1 added end to end evaluation for final context accuracy budget compliance etc. adde d validation for unkown , mising extra and empty entities or context cases. addded tests for the same Js this much today. Leave ur thoughts in the comments ."}, {"post_id": 65802, "ts": "2026-09-11T05:54:26Z", "hours": 0.415, "text": "Devlog#23 - Greetings EVeryone ! TL;DR - Retrieval and task-grounding quality can now be measured deterministically against repository ground truth, with full regression coverage Long - Short sesssion today. added the tp*.txt in gitignore for me to make temporary text files Added deterministic retrieval and task-grounding evaluation with precision recall F1 metrics Added stable repo entity ground truth and evaluation ccovergae Added test for the same added init .py in every subfolder of test bcz there were name clashes in pytest. So today this much only . Leave ur thoughts in the comment and wish me luck!!"}, {"post_id": 65491, "ts": "2026-09-10T17:44:53Z", "hours": 0.4758, "text": "Devlog#22 - Greeting Everyone ! TL;DR - Built the local repository evaluation foundation.Added structural and graph accuracy measurement for files, symbols, and relationships. Long Story - So added chec for my tool. Also committed a wrong spelling recal instead of recall in a func and and then hchnaged it in the new commit. thiings did - Added local evaluation repositories and tasks. Added structural and graph evaluation Added tests for the same Leave ur thoguths iin the comment and like it"}, {"post_id": 64918, "ts": "2026-09-09T17:09:37Z", "hours": 1.3094, "text": "Devlog#21 - Greeting Everyone! TL;DR - Repository analysis is now persisted, freshness-aware, and capable of selectively invalidating stale data instead of rebuilding everything.Cache invalidation and refresh behavior are deterministic, validated, and comprehensively tested. Long - Today I implemented the cache thing for my project. my ool works by mapping a repo and giving context to the user for user to give to AI agent for a work. SO for storing data i use SQLite but making rep data everytime will take a lot of time. So i introduced caching fo data and will refresh in sometime and can be refreshed manually also. Things did : added cache freshness checks for missing metadata , schema/analyzer version , missing fingerprints and file changes added deterministic file fingerprinting using size, modification timestamp and SHA-256 content hashes added selective invalidation for afected files, symbols, and relationships while preserving unaffected analysis added full cache invalidation for cases where existing analysis can no longer be trusted. Added cache refresh orchestration finally added tests for the same So this much today . Leave ur thoughts in the comments and like it"}, {"post_id": 64108, "ts": "2026-09-08T09:36:54Z", "hours": 1.1172, "text": "Devlog#20 - Greetings Everyone ! TL;DR - COntext Forge can now remember the state of repo aand files and identify what changes while context construction remains deterministic, robust and free of generated reasoning. Long - So Hello everyone and welcom to the 20th devlog. today added some more things which are : added deterministic file fingerprinting using its path size modification time etc. and used SHA-256content hashing Persisted file fingerprints in SQLit alongside repocacheing of metadata added detection for unchanged edited modeified added or deleted files Added storage and cache tests covering fingerprint persistence, replacement, and missing data. added analyzer covergae verifying the fingerprints are generated and rpersisted corrrectly. Kept diagnostics based on structured metadata and repository evidence rather than generated reasoning. This much today. Leave ur thoughts in the comments . BYEE and thnx for reading"}, {"post_id": 63650, "ts": "2026-09-07T15:58:34Z", "hours": 2.2053, "text": "Devlog#19 - Greeting Everyone! TL;DR - Originally built the planned reasoning-heavy approach, then identified it as unnecessary complexity and hard-reset all of that work to the clean retrieval baseline. Replaced it with a minimal, structured LLM selection layer where the model only decides include + confidence, while repository intelligence and deterministic metadata remain authoritative. Long Story - So initially i was continuing my plan to have reasoning for every candidate why it was choosed . like was a reasoning heavy context approach includes LLM reasoning. Was working on implementing it throught a flow. during testing, debugging and checking that it works perfectly but things went the other ways. during the checking, i got to a problem that LLM gives out many token in reasoning and which exceeds the limit or the max_tokens limit that i have. it was bad as i couldnt get reasoning perfectly for the per candidate. the i thought of another approach. i will generate the candidates and then i will give all the reasoning fo all of the candidates at the end of it. but this want also working as i wanted it to. i had committed the wrong changes and then i had to hard reset to a stable previous commit whcih didnt had this. then i realized that i was making the system too complicated and it wasnt needed so i remove dthe reasoning nd hard reset to a previous atable commit. I used AI to fix the broken code for the reasoning part that i built but after multiple attempts . So as i said before, 1 option only i reverted to a old git commit . this took most of my time but then did some chages also now context_forgehandes repo intellengence and LLM which decide only what is actually worth keeping. added a strict context-selection contract. Added the selection service to handle the model interaction and validate its response Selection confidence is carried into the final context as metadata, keeping the output inspectable without depending on generated explanations. Added and updated tests around the contract, selection service, package construction, and engine integration Well so this much only today. This day was hassle ful. I’ve used AI 2 times to fix the tings but 1 time i was successful and 1 time i am not. But keeping it aside. i am close to complete the ‘source code’ but not too close. I am thinking of having a brew tap for mac users and another way for windows and linux. The system isnt perfect but it is running. I will make it better nd make it functionable in real world. SO these chages today were light. Most time spent was on Debuging and checkigerrors an fixing them. If hackatime would calculate time spent debugging or xiing, tiday would be 6h+ devlog. Leave ur thouhts in the coments and plz like it."}, {"post_id": 63012, "ts": "2026-09-06T16:03:37Z", "hours": 0.4644, "text": "Devlog#18 - Greeting Everyone!: TL;DR - Integrated relationship-aware retrieval into context construction with bounded depth, confidence propagation, and retrieval provenance. Long Story - So had a small coding session today bcz i didnt got much time as exam is tommorow. Thing Done today - integrated relationship-aware retrieval into context construction addded bounded relationship expansion with confidence and provenance cnnected context-depth evidence to retrieval- added relationhship/depth to context signals added the tests related to the code changes So this mucn only today. Thnx for reading . Leave ur thoughts in the comments."}, {"post_id": 62338, "ts": "2026-09-05T17:38:45Z", "hours": 1.2731, "text": "Devlog#17 - Greeting everyone! TL;DR - Added deterministic deduplication, strongest-path selection, candidate limits, and cycle protection for relationship-aware retrieval.Expanded retrieval is now bounded, predictable, and keeps its evidence consistent, with 13 tests covering the new behavior. long - So a small codin session and added some new things. added deterministic dedpulication for relationship expanded candidates added strongest path selection using confidence depth and UUID odering preserved original candidate odering. enforced candidate expansion limits and cycle protection kept retrieval evidence aligned with selected candidates. added coverage for all the thing s we did through tests. Well so this much the implmentation was small but the testing of it anc checking it was perfect was hassle full Leave ur thoguths in the comments"}, {"post_id": 61627, "ts": "2026-09-04T16:53:19Z", "hours": 1.0678, "text": "Devlog#16 : Greeting Everyone - TL;DR - Context Forge can now understand what a task is asking for and deterministically connect that task to actual repository entities.It can also expand those entities through the repository relationship graph, providing a grounded repository neighborhood for subsequent retrieval and reasoning. Long Yap - Today was a small session of writing code and added new thing which is rep-aware task understanding and grounding. Grounding connects what the user mentions in a task to the actual files and symbols in the repository.It turns vague task references into concrete, verified repository entities that Context Forge can reason about added structured task interpretation covering intent, concepts, requested actions , constraints and ambiguity added exact repo relative path matching exact/unique symbol resolution while keeping unresolved references explicit added repo grounding to expand grounded entites through the existing relationship graph extended candidate generation so directly grounded and relationship connected entities can participate in context retrieval js this much today. Also had a single commit today but was a long one bcz i was in flow and forgot to commit and it was mostly tests . So sorry dev community 😭. (image attached is js a look at the code) Leave r thoughts in comments. open to feedback."}, {"post_id": 61300, "ts": "2026-09-04T04:26:37Z", "hours": 1.9978, "text": "Devlog#15: Greeting Everyone : TL;DR - Built reliable repository structure and a deterministic relationship graph, including symbols, imports, references, inheritance, ownership, relationship resolution, confidence, traversal, and persistence. Added comprehensive tests and validated against a real repository. Long Yap - So the baisc archtecture is completed and now i am working on its hardening and testing it on some real basic repos. Things done today - strengthened repository structural intelligence with more user-reliable Python parsing, symbol extraction, import references, inheritance references, and structural validation, etc. establihed the repo relation graph with numerous relationships. added deterministic relationship resolution with confience scoring and handling of unresolved references. Integrated relationship construction into the analysis pipeline expanded parser,graph,query & pipeline tests verified it basic working on real repo. close to completring a working version but not too close. leave ur thought in th comments . Have a good day or Night"}, {"post_id": 60372, "ts": "2026-09-02T17:45:49Z", "hours": 1.3311, "text": "Devlog#14 : Greeting Everyone TL;DR - Built a complete repository-to-context-to-AI workflow with real Python source context and robust CLI/error handling.The architecture is now stable at this boundary, ready for smarter retrieval, ranking, graph expansion, and project memory. Long Story - So worked some more on the CLI workflow of the tool. SO things did today : Completed the repo to context to provider to response workflow for py projects. Added real source content to select context units added CLI coverage hardend CLI handling for path , config, task, analysis, and generation failures added the keyboardinterreupt i.e. ctrl+c/EOF handling, clean exit codes and safe operational logging. expanded failure-path test coverage So this is the final thing is that the peices were coming together. A locally executable Python workflow from repository analysis through context generation and AI response, with a reliable CLI boundary. So leave ur thoughts in the comments and plz like it."}, {"post_id": 59711, "ts": "2026-09-01T17:11:48Z", "hours": 0.9758, "text": "Devlog#13 - Working on the CLI TL;DR - Integrated generation lifecycle handling with robust success/failure paths and duration tracking.Added rotating operational logging with privacy-safe metadata only—no prompts, responses, or reasoning.Hardened CLI/application tests and logging isolation. Yap - So Majorly worked on the tool so that it could work in the terminal with the command : context-forge [-h][–provider] etc. eg: ~/project/EV > context-forge . the above is the command that wil scan repo the command was ran in and asks for the task. another eg: ~/project/EV > context-forge -h this will give help menu of the cli tool. Also the responses are the Answers are given by the local LLM from ollama which is Qwen2.5-coder:7b which is quantized to Q4_K_M i.e. quantized to 4bit. it takes about 5GB Memory when running. I have to make it s that it runs perfectly as it doesnt answers some times etc. there are many problems to figure out will figure everything out Other things: Hardened provider/application error handling and ensured failures terminate cleanly without leaking task content. integrated generation lifecycle handling into the app flow which inclludes start/stop/completion/failure paths and duration tracking Added operational logging infra with a rotating app log at the global config drectoy Added privacy-focused logging tests ensuring prompts/tasks, generated responses, and model reasoning/thinking are never logged. Consolidated and finalized the logging method and generation lifecycle work; resolved logger path isloation. formatting,linting and test issues. js this much today nothing much more. Leave ur Views and thoguhts on this in the comments."}, {"post_id": 59047, "ts": "2026-08-31T17:11:19Z", "hours": 1.8733, "text": "Devlog#12 - StageX going Good. Greeting everyone. So i am working on the transition from qwen3:8b thinking model to non thining model. TL;DR - We redesigned the generation layer around Qwen2.5-Coder 7B and removed the old Qwen3 thinking/reasoning assumptions. The provider contract was simplified and the Ollama integration boundary was kept clean and model-agnostic. A layered configuration system was added with project, global, and built-in defaults, plus validation and precedence resolution. The CLI was then integrated with this configuration architecture while keeping the existing repository-intelligence pipeline unchanged. Full story - i inspected the existing architecture and confirmed that the repo intellegence pipeline should remain intact. i moved the active generation direction away from the old qwen3 thinking oriented architecture and established Qwen2.5-coder:7Bas the new default without hardcoding model throughout the database. I cleaned theprovider contractso reasoning thinking is no longer a part of the current core generation model while deliberately leaving future reasoning support for later architectural decisions. I also investigated the Olama integration boundary other than replacing its transportation implementation, keeping the previous Olama provider as the boundary. The largest tradition was that I wanted to add a config support so like someone can have a project project-wise configs for my tool, but it can also have a global config. So, if the project config is not available, the tool would fall back to the global config. So, I was thinking of using it as as like a .contextforge.toml file format. Yes, configuration is a dedicated defaults loading validation, etc. facilities solution, etc. And finally, the CLI was connected to the new configuration architecture. Provider settings are no longer hard-coded as the remaining configuration. This much only for today. Leave ur thoughts in the comments"}, {"post_id": 58277, "ts": "2026-08-30T17:25:39Z", "hours": 4.1383, "text": "Devlog#11 - Things went the Otherways. Greting everyone! TL;DR - for those who dont want to read long story - Spent most of the day debugging and rethinking the Ollama integration, which exposed problems with building around a thinking model. After testing the full workflow, I decided to move to Qwen2.5-Coder 7B and introduce Stage X to realign the architecture before continuing development. Long Story - for those who are interested 🙋: SO i was working towards local LLM integration for my project as mentioned in the previous devlog. Today was a sunday so had a lot of time on me so worked on this. i decided of making ollama the sole provider for AI for v1 of my project as it is easy to work with. I chose initially qwen3:8b model. i was working with it for the ollama integration and model works perfectly and give answers and checkning for bugs errors and debugging and adding more tests etc. today most of the time went into debgging,investigating, rediscovering how the existing architecture actually worked, challenging earlier assumptions, and then rethinking the architecture around what the system really needs. The first major objective was making sure the complete Python-project path worked together rather than only working as isolated components. The question was whether these pieces actually behaved correctly as one pipeline. So assessed the code and assemebled it and strenghted it and then added tests for it. Now working with ollama’s qwen3:8b model but soon ralzied it was a major mistake. i wanted to make the model to communicate with the project. So it worked kind off. Like the model i was using was a model that thinks and has chain of thoughts. But soon it became a problem for me. our first integration attempt exposed a problem. The model was clearly behaving as a thinking model. that mattered bcz Context Forge was now trying to use it as a part of a deterministic workflow. The model’s internal thinking could consume substantial generation time before producing the actual answer.That made the original integration architecture less suitable for the project. So i asked myself some questions and came to a conclusion that i should build v1 around the non thinking models like the one i will be using now on is qwen2.5-coder:7b . and integrate thinking and AI providers in future versions. THE CURRENT MODEL ARCHITECTURE should work with a non thinking model. So i introduced a phase for now called StageX where i would check the code and try to refactor it acc to the new direction we are heading. what will StageX chenage: Model Asumptions Thinking or reasoning done by the model Adding a Config file feature- CLI Behaviour(improved) Better Ollama integration Operational Logging this all we implemented in span of some days as i’ve got exams coming but will work on it. a large part of time not logged onto hackatime was spent towards rethinking the decisions made in the past and plan out the Future. TH biggest progress from this was architectural clarity. LET”S START STAGEX Thank u for reading this brain DUmp of Mine. Stay Tuned for future updates"}, {"post_id": 57500, "ts": "2026-08-29T17:47:41Z", "hours": 2.0633, "text": "Devlog #10 — Working. This phase mainly has been about the architecture more complete and connected end-to-end. TL;DR of the whole DEVLOG : Complted provider foundations, task validation/understanding & progressed by introducing ContextRequest and task Aware election. the new pipeline connects task -> validation -> context -> task aware selection->provider. . leave r reviews Long summary for those who are interested: Completed the provider foundation and established generation boundary. this gave cf* a proper path from context generation to serialized context to provider request togenerated response. Added TaskUnderstanding which is the first layer for understanding what the user is actually asking for. added TaskInterpretation, task understanding and validation and validation states such as clear, ambiguous, and sufficient. added tests to ensure invalid tasks stop the pipeline early Introduced ContextRequest as a cleaner boundary b/w the tsk and context systems. instead of pasing ptoject and task seperately, the context engine now recieves a single request containing the relevanr context. Also added some more tests for hardening Now i am focused on connecting pieces more tightly and doing thr final integration work needed . the architecture is now becoming less of collection of individual sytem and more of a single pipeline."}, {"post_id": 56743, "ts": "2026-08-28T16:56:32Z", "hours": 2.2978, "text": "Devlog#9 - working on LLM integration Greeting everyone Working towards the completion of the integration of local LLM. i will implement ollama as the LLM provider in the v1 a very hefty day as had to resolve many problems that had occur. js did 2 commits which had like most tests updtedetc. js this much today."}, {"post_id": 55613, "ts": "2026-08-27T16:03:03Z", "hours": 2.5283, "text": "Devlog#8 - My Greetings !! working towards the git understanding of the project. Hey hello everyone reading this. today the context_forge was extended with git intellengence. I implemented git repo detection repo root, branch/HEAD dicoovery parent or merge tracking shallow repo handling- Aggregate git activity summaries etc.etc. then integrated this directly into analyzer and project model. Persistence Layer was etended so git intellegence survies SQLite save or load cycles Also made a bunch of tests for each thing so that project stays perfectly working. finally the query layer gained explainability metadata so search results can comunicate why a result matched while keeping the explanation seperate from number ranking core. Also coming clean about a thing that i used antigravity bcz when i was working and very deep, i broke most of the files and couldnt seem to fix it so first time i used it to fix that. i havent committed it changes but i cme clean about it. ok bye so leave your opinions here in the comment section."}, {"post_id": 55095, "ts": "2026-08-26T15:30:14Z", "hours": 2.3058, "text": "Devlog#7 - Greeting everyone. progressively buildiing the core. so today also worked towards completing this phase which is a major step towards the project. it was a progress from finding relevant context to building deterministic contextpackage. added serialization support for enriched context. established the provider boundary and deterministic provider without coupling the core engine to an external source like a LLM or a AI provider. introduced compression abstraction added budget -aware compression as we 3 lvls talked about in previous devlogs(you can refer to thm). introdued explicit context-priority modeling Added ContextPriorityOrdering and may smal changes also. from previous devlog, the changes are that previously it could build repo understanding, retrieval,rankingetc. but now it can do compression, prioritization, ordering and assembly. So leave your thoufghts i the comment. THANK YOU!! (also the image uploaded isnt the full code written its just a snippet and also not the full code of the file so plz dont make it the truth. Visit the GITHUB REPO to see the changes and the files)"}, {"post_id": 54515, "ts": "2026-08-25T15:23:24Z", "hours": 0.4597, "text": "Devlog#6 - working . Working towards the project arcitecture. Quick update: I just did a pass on the project with some minimal changes and additions. I added a graph expander and context expansion, and wired the full pipeline into the default context engine. Please leave your reviews in the comments!"}, {"post_id": 54412, "ts": "2026-08-25T12:43:28Z", "hours": 1.6861, "text": "Devlog#5 - workking .HELLO EVERYONE!!!! so i am working on my project and i have done some new things which are : added contextcandidate added conversion from existing searchresult added relevancesignals added deterministic ranking which combines candiadte score+signals and mac score is 1.0 Main : added context depth options which are minimal recommended and Deep. in this part , i am thinking of integrating local LLM like models ollama provides or a API key of a AI provider like claude or openAI or any other provider user wshes for which will help make good perfect context. the things are coming together and i am seeing my project become a great project. So plz leave a like and ur suggetions. (Note: While I am engineering the core context pipeline by hand, I am utilizing AI to generate my unit tests and boilerplate to accelerate development. i have declared it into the AI section of the Project.)"}, {"post_id": 53754, "ts": "2026-08-24T13:02:58Z", "hours": 1.1856, "text": "Devlog#4 - making context forge actually undertstand a project Hello Everyone !! So today just worked upon making some changes like make the project context forge, scan the repository, classify it, detect languages, et cetera. Yes, handbroken files without killing the analysis, etc. And also we built projectquery So, the analyzed project can be actually explored. now the project is coming together. next plan is add a custom LLM model to make it more better. if you have ideas for a good LLM available for free and locally so plz comment. Thank you for looking at it. Bye."}, {"post_id": 53150, "ts": "2026-08-23T16:07:50Z", "hours": 1.3417, "text": "Devlog#3 HELLO EVERYONE!!! I worked on the project search and retrieval foundation. The model is now useful for task-oriented retrieval and ranks search results. Search operates over the persistent project model created .It establishes the basic architecture: Task -> Retrieval -> Ranking -> Context. So far the project is going well and exactly as planned. I aim to ship it . Wish me luck and please check it out!"}, {"post_id": 52985, "ts": "2026-08-23T11:15:05Z", "hours": 3.5578, "text": "DEVLOG#2 - This time, Context Forge went from a basic skeleton to actually understanding a repository. It can now scan projects, classify files, detect languages/frameworks, extract Python symbols, build relationships, and store everything locally in SQLite. .The biggest takeaway: before making Context Forge “smart,” I need to make sure it has a solid understanding of the project itself."}, {"post_id": 52328, "ts": "2026-08-22T13:12:22Z", "hours": 1.5494, "text": "Devlog#1 : I actually started thinking the architecture for Context Forge and I am officially setting up the project and logging my hours here today. The idea came from a problem I repeatedly faced while coding in a big project that when there are massive amount of files, we tend to break things like which things would be affected potentialy but these changes etc.. Context Forge solves this by building a persistent understanding of software project"}]...
|
Title: Context Forge by @vxyzln | Stardance
Devlo Title: Context Forge by @vxyzln | Stardance
Devlogs:
Devlog#1 : I actually started thinking the architecture for Context Forge and I am officially setting up the project and logging my hours here today. The idea came from a problem I repeatedly faced while coding in a big project that when there are massive amount of files, we tend to break things like which things would be affected potentialy but these changes etc.. Context Forge solves this by building a persistent understanding of software project
DEVLOG#2 - This time, Context Forge went from a basic skeleton to actually understanding a repository. It can now scan projects, classify files, detect languages/frameworks, extract Python symbols, build relationships, and store everything locally in SQLite. .The biggest takeaway: before making Context Forge “smart,” I need to make sure it has a solid understanding of the project itself.
Devlog#3 HELLO EVERYONE!!! I worked on the project search and retrieval foundation. The model is now useful for task-oriented retrieval and ranks search results. Search operates over the persistent project model created .It establishes the basic architecture: Task -> Retrieval -> Ranking -> Context. So far the project is going well and exactly as planned. I aim to ship it . Wish me luck and please check it out!
Devlog#4 - making context forge actually undertstand a project Hello Everyone !! So today just worked upon making some changes like make the project context forge, scan the repository, classify it, detect languages, et cetera. Yes, handbroken files without killing the analysis, etc. And also we built projectquery So, the analyzed project can be actually explored. now the project is coming together. next plan is add a custom LLM model to make it more better. if you have ideas for a good LLM available for free and locally so plz comment. Thank you for looking at it. Bye.
Devlog#5 - workking .HELLO EVERYONE!!!! so i am working on my project and i have done some new things which are : added contextcandidate added conversion from existing searchresult added relevancesignals added deterministic ranking which combines candiadte score+signals and mac score is 1.0 Main : added context depth options which are minimal recommended and Deep. in this part , i am thinking of integrating local LLM like models ollama provides or a API key of a AI provider like claude or openAI or any other provider user wshes for which will help make good perfect context. the things are coming together and i am seeing my project become a great project. So plz leave a like and ur suggetions. (Note: While I am engineering the core context pipeline by hand, I am utilizing AI to generate my unit tests and boilerplate to accelerate development. i have declared it into the AI section of the Project.)
Devlog#6 - working . Working towards the project arcitecture. Quick update: I just did a pass on the project with some minimal changes and additions. I added a graph expander and context expansion, and wired the full pipeline into the default context engine. Please leave your reviews in the comments!
Devlog#7 - Greeting everyone. progressively buildiing the core. so today also worked towards completing this phase which is a major step towards the project. it was a progress from finding relevant context to building deterministic contextpackage. added serialization support for enriched context. established the provider boundary and deterministic provider without coupling the core engine to an external source like a LLM or a AI provider. introduced compression abstraction added budget -aware compression as we 3 lvls talked about in previous devlogs(you can refer to thm). introdued explicit context-priority modeling Added ContextPriorityOrdering and may smal changes also. from previous devlog, the changes are that previously it could build repo understanding, retrieval,rankingetc. but now it can do compression, prioritization, ordering and assembly. So leave your thoufghts i the comment. THANK YOU!! (also the image uploaded isnt the full code written its just a snippet and also not the full code of the file so plz dont make it the truth. Visit the GITHUB REPO to see the changes and the files)
Devlog#8 - My Greetings !! working towards the git understanding of the project. Hey hello everyone reading this. today the context_forge was extended with git intellengence. I implemented git repo detection repo root, branch/HEAD dicoovery parent or merge tracking shallow repo handling- Aggregate git activity summaries etc.etc. then integrated this directly into analyzer and project model. Persistence Layer was etended so git intellegence survies SQLite save or load cycles Also made a bunch of tests for each thing so that project stays perfectly working. finally the query layer gained explainability metadata so search results can comunicate why a result matched while keeping the explanation seperate from number ranking core. Also coming clean about a thing that i used antigravity bcz when i was working and very deep, i broke most of the files and couldnt seem to fix it so first time i used it to fix that. i havent committed it changes but i cme clean about it. ok bye so leave your opinions here in the comment section.
Devlog#9 - working on LLM integration Greeting everyone Working towards the completion of the integration of local LLM. i will implement ollama as the LLM provider in the v1 a very hefty day as had to resolve many problems that had occur. js did 2 commits which had like most tests updtedetc. js this much today.
Devlog #10 — Working. This phase mainly has been about the architecture more complete and connected end-to-end. TL;DR of the whole DEVLOG : Complted provider foundations, task validation/understanding & progressed by introducing ContextRequest and task Aware election. the new pipeline connects task -> validation -> context -> task aware selection->provider. . leave r reviews Long summary for those who are interested: Completed the provider foundation and established generation boundary. this gave cf* a proper path from context generation to serialized context to provider request togenerated response. Added TaskUnderstanding which is the first layer for understanding what the user is actually asking for. added TaskInterpretation, task understanding and validation and validation states such as clear, ambiguous, and sufficient. added tests to ensure invalid tasks stop the pipeline early Introduced ContextRequest as a cleaner boundary b/w the tsk and context systems. instead of pasing ptoject and task seperately, the context engine now recieves a single request containing the relevanr context. Also added some more tests for hardening Now i am focused on connecting pieces more tightly and doing thr final integration work needed . the architecture is now becoming less of collection of individual sytem and more of a single pipeline.
Devlog#11 - Things went the Otherways. Greting everyone! TL;DR - for those who dont want to read long story - Spent most of the day debugging and rethinking the Ollama integration, which exposed problems with building around a thinking model. After testing the full workflow, I decided to move to Qwen2.5-Coder 7B and introduce Stage X to realign the architecture before continuing development. Long Story - for those who are interested 🙋: SO i was working towards local LLM integration for my project as mentioned in the previous devlog. Today was a sunday so had a lot of time on me so worked on this. i decided of making ollama the sole provider for AI for v1 of my project as it is easy to work with. I chose initially qwen3:8b model. i was working with it for the ollama integration and model works perfectly and give answers and checkning for bugs errors and debugging and adding more tests etc. today most of the time went into debgging,investigating, rediscovering how the existing architecture actually worked, challenging earlier assumptions, and then rethinking the architecture around what the system really needs. The first major objective was making sure the complete Python-project path worked together rather than only working as isolated components. The question was whether these pieces actually behaved correctly as one pipeline. So assessed the code and assemebled it and strenghted it and then added tests for it. Now working with ollama’s qwen3:8b model but soon ralzied it was a major mistake. i wanted to make the model to communicate with the project. So it worked kind off. Like the model i was using was a model that thinks and has chain of thoughts. But soon it became a problem for me. our first integration attempt exposed a problem. The model was clearly behaving as a thinking model. that mattered bcz Context Forge was now trying to use it as a part of a deterministic workflow. The model’s internal thinking could consume substantial generation time before producing the actual answer.That made the original integration architecture less suitable for the project. So i asked myself some questions and came to a conclusion that i should build v1 around the non thinking models like the one i will be using now on is qwen2.5-coder:7b . and integrate thinking and AI providers in future versions. THE CURRENT MODEL ARCHITECTURE should work with a non thinking model. So i introduced a phase for now called StageX where i would check the code and try to refactor it acc to the new direction we are heading. what will StageX chenage: Model Asumptions Thinking or reasoning done by the model Adding a Config file feature- CLI Behaviour(improved) Better Ollama integration Operational Logging this all we implemented in span of some days as i’ve got exams coming but will work on it. a large part of time not logged onto hackatime was spent towards rethinking the decisions made in the past and plan out the Future. TH biggest progress from this was architectural clarity. LET”S START STAGEX Thank u for reading this brain DUmp of Mine. Stay Tuned for future updates
Devlog#12 - StageX going Good. Greeting everyone. So i am working on the transition from qwen3:8b thinking model to non thining model. TL;DR - We redesigned the generation layer around Qwen2.5-Coder 7B and removed the old Qwen3 thinking/reasoning assumptions. The provider contract was simplified and the Ollama integration boundary was kept clean and model-agnostic. A layered configuration system was added with project, global, and built-in defaults, plus validation and precedence resolution. The CLI was then integrated with this configuration architecture while keeping the existing repository-intelligence pipeline unchanged. Full story - i inspected the existing architecture and confirmed that the repo intellegence pipeline should remain intact. i moved the active generation direction away from the old qwen3 thinking oriented architecture and established Qwen2.5-coder:7Bas the new default without hardcoding model throughout the database. I cleaned theprovider contractso reasoning thinking is no longer a part of the current core generation model while deliberately leaving future reasoning support for later architectural decisions. I also investigated the Olama integration boundary other than replacing its transportation implementation, keeping the previous Olama provider as the boundary. The largest tradition was that I wanted to add a config support so like someone can have a project project-wise configs for my tool, but it can also have a global config. So, if the project config is not available, the tool would fall back to the global config. So, I was thinking of using it as as like a .contextforge.toml file format. Yes, configuration is a dedicated defaults loading validation, etc. facilities solution, etc. And finally, the CLI was connected to the new configuration architecture. Provider settings are no longer hard-coded as the remaining configuration. This much only for today. Leave ur thoughts in the comments
Devlog#13 - Working on the CLI TL;DR - Integrated generation lifecycle handling with robust success/failure paths and duration tracking.Added rotating operational logging with privacy-safe metadata only—no prompts, responses, or reasoning.Hardened CLI/application tests and logging isolation. Yap - So Majorly worked on the tool so that it could work in the terminal with the command : context-forge [-h][–provider] etc. eg: ~/project/EV > context-forge . the above is the command that wil scan repo the command was ran in and asks for the task. another eg: ~/project/EV > context-forge -h this will give help menu of the cli tool. Also the responses are the Answers are given by the local LLM from ollama which is Qwen2.5-coder:7b which is quantized to Q4_K_M i.e. quantized to 4bit. it takes about 5GB Memory when running. I have to make it s that it runs perfectly as it doesnt answers some times etc. there are many problems to figure out will figure everything out Other things: Hardened provider/application error handling and ensured failures terminate cleanly without leaking task content. integrated generation lifecycle handling into the app flow which inclludes start/stop/completion/failure paths and duration tracking Added operational logging infra with a rotating app log at the global config drectoy Added privacy-focused logging tests ensuring prompts/tasks, generated responses, and model reasoning/thinking are never logged. Consolidated and finalized the logging method and generation lifecycle work; resolved logger path isloation. formatting,linting and test issues. js this much today nothing much more. Leave ur Views and thoguhts on this in the comments.
Devlog#14 : Greeting Everyone TL;DR - Built a complete repository-to-context-to-AI workflow with real Python source context and robust CLI/error handling.The architecture is now stable at this boundary, ready for smarter retrieval, ranking, graph expansion, and project memory. Long Story - So worked some more on the CLI workflow of the tool. SO things did today : Completed the repo to context to provider to response workflow for py projects. Added real source content to select context units added CLI coverage hardend CLI handling for path , config, task, analysis, and generation failures added the keyboardinterreupt i.e. ctrl+c/EOF handling, clean exit codes and safe operational logging. expanded failure-path test coverage So this is the final thing is that the peices were coming together. A locally executable Python workflow from repository analysis through context generation and AI response, with a reliable CLI boundary. So leave ur thoughts in the comments and plz like it.
Devlog#15: Greeting Everyone : TL;DR - Built reliable repository structure and a deterministic relationship graph, including symbols, imports, references, inheritance, ownership, relationship resolution, confidence, traversal, and persistence. Added comprehensive tests and validated against a real repository. Long Yap - So the baisc archtecture is completed and now i am working on its hardening and testing it on some real basic repos. Things done today - strengthened repository structural intelligence with more user-reliable Python parsing, symbol extraction, import references, inheritance references, and structural validation, etc. establihed the repo relation graph with numerous relationships. added deterministic relationship resolution with confience scoring and handling of unresolved references. Integrated relationship construction into the analysis pipeline expanded parser,graph,query & pipeline tests verified it basic working on real repo. close to completring a working version but not too close. leave ur thought in th comments . Have a good day or Night
Devlog#16 : Greeting Everyone - TL;DR - Context Forge can now understand what a task is asking for and deterministically connect that task to actual repository entities.It can also expand those entities through the repository relationship graph, providing a grounded repository neighborhood for subsequent retrieval and reasoning. Long Yap - Today was a small session of writing code and added new thing which is rep-aware task understanding and grounding. Grounding connects what the user mentions in a task to the actual files and symbols in the repository.It turns vague task references into concrete, verified repository entities that Context Forge can reason about added structured task interpretation covering intent, concepts, requested actions , constraints and ambiguity added exact repo relative path matching exact/unique symbol resolution while keeping unresolved references explicit added repo grounding to expand grounded entites through the existing relationship graph extended candidate generation so directly grounded and relationship connected entities can participate in context retrieval js this much today. Also had a single commit today but was a long one bcz i was in flow and forgot to commit and it was mostly tests . So sorry dev community 😭. (image attached is js a look at the code) Leave r thoughts in comments. open to feedback.
Devlog#17 - Greeting everyone! TL;DR - Added deterministic deduplication, strongest-path selection, candidate limits, and cycle protection for relationship-aware retrieval.Expanded retrieval is now bounded, predictable, and keeps its evidence consistent, with 13 tests covering the new behavior. long - So a small codin session and added some new things. added deterministic dedpulication for relationship expanded candidates added strongest path selection using confidence depth and UUID odering preserved original candidate odering. enforced candidate expansion limits and cycle protection kept retrieval evidence aligned with selected candidates. added coverage for all the thing s we did through tests. Well so this much the implmentation was small but the testing of it anc checking it was perfect was hassle full Leave ur thoguths in the comments
Devlog#18 - Greeting Everyone!: TL;DR - Integrated relationship-aware retrieval into context construction with bounded depth, confidence propagation, and retrieval provenance. Long Story - So had a small coding session today bcz i didnt got much time as exam is tommorow. Thing Done today - integrated relationship-aware retrieval into context construction addded bounded relationship expansion with confidence and provenance cnnected context-depth evidence to retrieval- added relationhship/depth to context signals added the tests related to the code changes So this mucn only today. Thnx for reading . Leave ur thoughts in the comments.
Devlog#19 - Greeting Everyone! TL;DR - Originally built the planned reasoning-heavy approach, then identified it as unnecessary complexity and hard-reset all of that work to the clean retrieval baseline. Replaced it with a minimal, structured LLM selection layer where the model only decides include + confidence, while repository intelligence and deterministic metadata remain authoritative. Long Story - So initially i was continuing my plan to have reasoning for every candidate why it was choosed . like was a reasoning heavy context approach includes LLM reasoning. Was working on implementing it throught a flow. during testing, debugging and checking that it works perfectly but things went the other ways. during the checking, i got to a problem that LLM gives out many token in reasoning and which exceeds the limit or the max_tokens limit that i have. it was bad as i couldnt get reasoning perfectly for the per candidate. the i thought of another approach. i will generate the candidates and then i will give all the reasoning fo all of the candidates at the end of it. but this want also working as i wanted it to. i had committed the wrong changes and then i had to hard reset to a stable previous commit whcih didnt had this. then i realized that i was making the system too complicated and it wasnt needed so i remove dthe reasoning nd hard reset to a previous atable commit. I used AI to fix the broken code for the reasoning part that i built but after multiple attempts . So as i said before, 1 option only i reverted to a old git commit . this took most of my time but then did some chages also now context_forgehandes repo intellengence and LLM which decide only what is actually worth keeping. added a strict context-selection contract. Added the selection service to handle the model interaction and validate its response Selection confidence is carried into the final context as metadata, keeping the output inspectable without depending on generated explanations. Added and updated tests around the contract, selection service, package construction, and engine integration Well so this much only today. This day was hassle ful. I’ve used AI 2 times to fix the tings but 1 time i was successful and 1 time i am not. But keeping it aside. i am close to complete the ‘source code’ but not too close. I am thinking of having a brew tap for mac users and another way for windows and linux. The system isnt perfect but it is running. I will make it better nd make it functionable in real world. SO these chages today were light. Most time spent was on Debuging and checkigerrors an fixing them. If hackatime would calculate time spent debugging or xiing, tiday would be 6h+ devlog. Leave ur thouhts in the coments and plz like it.
Devlog#20 - Greetings Everyone ! TL;DR - COntext Forge can now remember the state of repo aand files and identify what changes while context construction remains deterministic, robust and free of generated reasoning. Long - So Hello everyone and welcom to the 20th devlog. today added some more things which are : added deterministic file fingerprinting using its path size modification time etc. and used SHA-256content hashing Persisted file fingerprints in SQLit alongside repocacheing of metadata added detection for unchanged edited modeified added or deleted files Added storage and cache tests covering fingerprint persistence, replacement, and missing data. added analyzer covergae verifying the fingerprints are generated and rpersisted corrrectly. Kept diagnostics based on structured metadata and repository evidence rather than generated reasoning. This much today. Leave ur thoughts in the comments . BYEE and thnx for reading
Devlog#21 - Greeting Everyone! TL;DR - Repository analysis is now persisted, freshness-aware, and capable of selectively invalidating stale data instead of rebuilding everything.Cache invalidation and refresh behavior are deterministic, validated, and comprehensively tested. Long - Today I implemented the cache thing for my project. my ool works by mapping a repo and giving context to the user for user to give to AI agent for a work. SO for storing data i use SQLite but making rep data everytime will take a lot of time. So i introduced caching fo data and will refresh in sometime and can be refreshed manually also. Things did : added cache freshness checks for missing metadata , schema/analyzer version , missing fingerprints and file changes added deterministic file fingerprinting using size, modification timestamp and SHA-256 content hashes added selective invalidation for afected files, symbols, and relationships while preserving unaffected analysis added full cache invalidation for cases where existing analysis can no longer be trusted. Added cache refresh orchestration finally added tests for the same So this much today . Leave ur thoughts in the comments and like it
Devlog#22 - Greeting Everyone ! TL;DR - Built the local repository evaluation foundation.Added structural and graph accuracy measurement for files, symbols, and relationships. Long Story - So added chec for my tool. Also committed a wrong spelling recal instead of recall in a func and and then hchnaged it in the new commit. thiings did - Added local evaluation repositories and tasks. Added structural and graph evaluation Added tests for the same Leave ur thoguths iin the comment and like it
Devlog#23 - Greetings EVeryone ! TL;DR - Retrieval and task-grounding quality can now be measured deterministically against repository ground truth, with full regression coverage Long - Short sesssion today. added the tp*.txt in gitignore for me to make temporary text files Added deterministic retrieval and task-grounding evaluation with precision recall F1 metrics Added stable repo entity ground truth and evaluation ccovergae Added test for the same added init .py in every subfolder of test bcz there were name clashes in pytest. So today this much only . Leave ur thoughts in the comment and wish me luck!!
Devlog#24 - Greeting Everyone ! TL;DR - Added evaluation for both context selection and final context quality, covering correctness, budget limits, and deterministic behavior. Added focused tests to validate the complete evaluation flow. Long - So exams are going on so can’t do long hour session. Was planning to add manythings over few days but it would stretch for about more days. Things did - Added context-selection evaluation against expected entities using precision recall f1 added end to end evaluation for final context accuracy budget compliance etc. adde d validation for unkown , mising extra and empty entities or context cases. addded tests for the same Js this much today. Leave ur thoughts in the comments .
Devlog#25 - Greeting Everyone ! No TL;DR as small work today. things accomplished today - Added evaluation aggregation and baseline regression tracking Added validation for duplicate cases and regression tolerance, with tests for the same. Committed implementation and tests as focused changes. Leave ur thoughts in the comments.
Devlog#26 - Greeting Everyone ! No TL;DR as short work work today - Added deterministic evaluation baseline storage and serialization. Added validation, aggregation, coverage, and persistence support. Added comprehensive tests and maintained a clean, validated implementation. So, this much today only leave your thoughts in the comments/
Devlog#27 - Greetings Everyone ! TL;DR - Context Forge can now remember the repo state update it s understanding when things change and provides a proper cli for those who use it. It has ig aroung 6 funcs which u can read below. The work also made the internal state much easier to inspect and debug while keeping the existing thing intact. Long - SO this Devlog is after a long time ig. I was giving 5-10 mins t the project to not lose my habit and the streak also. But today my exams got over so now i can focus on the project. STARDANCE is ending soon so i need to hurry up and complete this asap. So basically did a lot of main writing for cli functionality. cf* - context forge (too lazy to write it out everytime) things did in those past days - made repo analysis persistent instead of starting from scratch everytime the cf* is ran. added file fingerprintng and change detection for smart analysis for a smart project. imporoved how changed files affect relationships and project info. added a proper dev workflow through the CLI as it is a main part and added commands like analysis and generation commands added task input , config handling, clenaer error behaviour for the better contxt of it added command to inspect repo state cache state project info and diagnostics or i should say Pre-Rendered Excuses Generation fixed issues around cache freshness and changed fiel reporting added tests for the new functionality and made sure the existing workflow stayed intact for cf* refactored the fingerprinting logic so it culd be shared cleany by the analyzer and the Cli i made for cf* So this much for the past these days. Now the thing is slowly coming like a real version. Its complexity is very high ,atleast for me . Bcz i made many py projects and this is the most challenging one so far but it shift me into the flow state after sometime so yeah it is a good challenge. It was like based on my problem i faced when i was vibecoding in the early days js to do timepass . But now when u can make it , it feels incredibale. SO yeah it is good. Yes but Currently i see models like astra and fable come out with much more context lenght and etc. so my product is not needed for them for but is a good fun project on thr side. These new models are good but havent tried them but will try them fter i get some freetime after Stardance. as stardance is my first and last ysws soi it was a great experience. Also i did many of the things in neovim like editing some files and etc but i couldnt settedup hackatime with it so like around 1-1.5 h of extra work was untracked on hackatime but it was ok. I was seeing the primeagen video of neovim and wanted to try it out so i did and learned some basics and therre is a very stepp learning curve in it . ALso tried out lazyvim but not my style . So wil pause the vim learing for a few days and finish the prject cf asap. Sorry for this Yapp Session but dumped everything i had for these past few days. SO plz leave ur review in the comment and plz like it and rate it good.
Devlog#28 - Greetings Everyone ! TL;DR - Added proper ollama checking and validation plus a runtime cli. Generation now safely uses fresh persisted repo intelligence instead of re-analyzing the project everytime Long - Problems : so when doing today’s work the problems that i wanted to fix was that the generation workflow was still too dependent on live repo analysis instead of using the persisted intelligence. 2nd there was no way to verify ollama itself is available or not. like ollama runtime and is a model available or not. runtime failures needed to stop generation cleanly and not throw a bunch of error a user neds to debug. we needed to preserve provider behaviour and avoid breaking the previous architecture i built the generation one. also the generation path needed clear boundaries between runtime validation, provider execution and final output and etc etc. It sound much but the implementation was simple as ig for me. things done today to solve the problems - added ollama runtime inspection to check local runtime and requested model are available added dedicated runtime cli commd for checking the state of the runtime and model independently changed the generation to load persistd repo intellegence insteasd of it everytime doing a fresh analysis as it would be bad for it to make new things for everytime a cli is ran added cache freshness validation so generation refues stale repo intellegence added regression covergae proving that a generation uses the persistent project and doesnt starts the analyzer again made a foundation kinda thing for a clean generationresponse to cli output boundary with remainng output workflow continuing afterwards added test for the features added Also some of the current changes may not be sen on the github repo bcz i havent comitted some changes as they are a part of a feature and i commit like a feature and the tests related to it for better commits ig . Now what we did to solve the problems and how i felt when solving them - . the generation pipeline is now ready to build the dev facing output worflow or like a user workflow on top of these things the previous architecture i made. i found addng the flags to main.py file easy but then adding the cache checking and the regression covergae and the generationresponse to cli output boundary a bit challenging . So today only this much. Hope u like my project and plz comment for feedback. also a mention to @CT5 on slack for telling me to added problem and solution section in my devlog for better project experii\ence.
Devlog#29 - Greeting Everyone ! STARDANCE IS GETTING EXTENDED YAYYY!!!!! No TL;DR today for short work Things did today in short time added clean generation outuput handling added cli error handling and seperated output from errors connected generation to the persisted project added test for the same also spent some time on editing some test generated bcz they werent like tha lvl Sp today short work due to other school work coming in. Leave ur thoguhts in the comments and pl like it if u think it is good and should get real appreciation.
Devlog#30 - Greeting Everyone ! - THE GREAT PIVOT Work - Context forge is now moving away from being a generation based tool and becoming a deterministic agent memory foundation. now the rtransition is done cleanly and now i am working ahead on the current foundation but new features. work done - completed the changed direction of context forge from the old provider and generation system to a repo intellegence system removed the ollama integration, provider stack. runtime configuration and the dependencies that came with them. the core should now work without depending on LLM or external APIs refactoredthe application services, task understanding, context slelction, ranking and CLI to fit the new direction. kept the important foundation like SQLite storage , AST based analysis, repo fingerprints, inremental file change detection and evidence based context rtrieval added architecture tests for offline operation , deterministic ranking, file change detection and making sure the context output has proper evidence cleaned up all the old tests which were not needed and deleted the whole files which weren’t needed in the future . Today was mostly about get ting the big transition properly finished. So for the past days, I had some exams and was not happy with the behavior of Olama, of its undeterministic behavior. So I took this step. I did not change the base foundation. I just changed the overlying architecture, the Olama ones, and removed everything that was made that was not needed. So the commit of today is very large, like 7,000 lines removed, and 1000 lines written. I made one big commit for the entire transition instead of splitting this architectural layer into multiple commits. Transform context force into a deterministic agent memory foundation. I also cleaned up the extra local branches and checked that main was synced with GitHub. Now I’m moving towards a memory vault kind of thing. I have to build on what already exists instead of rewriting everything again, improve the memory idea of foundations, add the shorter commands. Yes, so yeah, this was a pretty big change for our project. There was still a lot to do, but at least reaction is much cleaner now. Hope you like the project and please leave your thoughts or feedback in the comments. To be completely transparent, I used AI assistance to help me safely untangle and delete parts of the old architecture that were tightly coupled. As a student developer handling a complex refactor alone, trying to manually map out every single breaking change across thousands of lines got overwhelming, and I needed the help to get it done cleanly. No regrets it got the job back on track, and the codebase is in a much healthier place. With the cleanup done and main fully synced, I’m now shifting focus toward building out the new deterministic memory vault and refining the short-form CLI commands for AI agents. Show writer shipwrights. Please don’t wreck my project. Hope you like the new direction! Let me know your thoughts or feedback in the comments below.
Devlog#31 - Greeting Everyone ! TL;DR - I spent time strengthening Context Forge’s core memory and retrieval systems, making repository knowledge more reliable and useful. I also improved how the project handles changes, retrieves relevant information, and exposes its capabilities through the CLI. Work - I wanted to move beyond simple analyzing repo and make cf better at remembering, understanding and retrieving repo knowledge. Here what i did : Strengthened how repository information is stored so files, symbols, and relationships remain available even after restarting the application. Improved how Context Forge handles added, modified, and deleted files, keeping stored knowledge aligned with the actual repository and preventing outdated information from lingering. Strengthened the way relevant files, symbols, and relationships are found and ranked, making results more predictable and consistent. Improved the ability to trace retrieved information back to repository evidence and understand why particular results were selected. Added the cf command as a shorter alternative to context-forge , while preserving the existing command and its behavior. Expanded the CLI with commands for inspecting repository status, memory, files, symbols, references, and relationships, making it easier to explore what Context Forge knows. Improved operational error handling, logging, and diagnostics, making failures easier to understand and helping keep the overall experience more predictable. So yeah did so many things It’s been a while since the Great Pivot / I took some time work through these as i also had to check whether there is some code of the things iripped off in the great pivot. the time went here on working through these features properly, strength the exisiting foundationand make cf more relaible and now moving onto the next things. So leave ur thoughts in the comments and plz leave a like
Devlog#32 - Greeting Everyone ! TL;DR - I spent quite some time making Context Forge more reliable under the hood. The focus was on improving repository analysis, CLI usability, and ensuring that the memory system stays consistent with the actual codebase. Work - I wanted to make cf more than js a tool that scans repo once and stores some info. i wanted to make it useful in real dev workflow or like for someone like me who is making many projects and can sometimes lose trace of what will happned to the codebase. HEre’s what i worked on for these 8h spread across some days. Improved repository analysis and persistence so that the stored knowledge remains consistent and can be reused across different runs. Strengthened incremental analysis to handle added, modified, and deleted files more reliably, reducing the chances of outdated information sticking around. Worked on retrieval and relationship handling to make results more predictable and easier to trace back to the actual source code. Improved the CLI experience, making it easier to inspect repository information and understand what Context Forge currently knows. Refined error handling and diagnostics so that failures are easier to investigate instead of leaving me guessing about what went wrong. Expanded the test coverage across the core systems to catch regressions and make sure that improvements in one area don’t quietly break another. One of the trickkier parts was that the stored repo info actually reflected the current codebase. it’s easy to get things on fresh analysis but things get more complicated when files change , disapper or contain info that cannot bre resolved cleanly. I had to spend time thinking abt edge cases to. a lot work was for strengthing the base the foundation , some improvements i made aren’t visibe ut matter when u want cf to behave properly across multiple projects. Yeah so there is more to build and it was a solid step for cf i would say so. Also SD getting ending in 10 days and i have a lot in mind and i need to ship quick so there would be a lots of commits and hrs or the upcoming 2-3 days as i will grind as much as the time i would get . So leave ur thoughts in the comments if u have any and plz like the project (image context : i ran the cf . command on the cf repo itself and this was its answer)
Devlog#33 - Greeting Everyone ! Tl;DR - i spent quite a few hours working on makinf cf understand the repo better , finding th right info and letting the user to inspect a codebase before making changes. like searching for func what it depend on etc. Work : One thing i’ve been thinking abt is that when working on ap project that we can we see what things happend in the repo and where things are and what would i need to look for when changin something etc. . A So lot of work went into connecting some pieces and making sure cf gives reliable info and instead of the sqlite database dat Things done : cf can now check the rpeo and its analysis readiness. this helps bcz it can identify configuration problems instead of discovering them after halfway through. Improved the way cf finds specific symbols in a codebase of a project. the idea was to make it easier to locate and see where a func or a class or other element lies. without having to search everything manually. worked on retrieving relevant source excerpts and checking whether the info is still reliable in the current state of the repo/codebase as there is no use of having old data . added the git navigation capabilities so cf can work with arep changes and git’s context withut modifying the repo code. A MAJOR THING - cf can now bring imp repo info , evidence, other relevant things to help user see the codebase state before making a mistake or making changes to the code. Alongside these made some minor improvements lke more consistent error handling and auditing things etc. and also checking these minor things didnt broke any other things. these kinda things look boing but are nessecary/needed. i dont want cf to be one of the project where u give features without making the existng ones better. i want it to be better and useful for users when working on a large codebase etcetc. Honestly , i’ve had shipped this way earlier if i wasnt slacking off and exams didnt came i my way but we are now in the Last 10 days of Sd. i have a quite things in mind which i need to complete this before shippins so focus on that or some days and the i will ship it. ALso the time on this devlog is small bcz i had accidentally deleted the hackatime config(or file whatevery u want to say) and i didn’t noticed it for quite a few time and then today i relaized when i open my hackatime dashboard. So this is the last time that was logged. I will setup before writing a next devlog . So open to ur thoughts on the cf project and comment ur thoughts. ALso plz leave a like if u like m project !!!!!!!!!!!!...
|
1792723718.2292595
|
1793328518.2292595
|
|
57092
|
SpaceOS by @NEBULA_X | Stardance
|
NEBULA_X
|
0
|
10.27
|
0
|
[]
|
[{"post_id": 81774, "ts": "202 [{"post_id": 81774, "ts": "2026-10-22T13:21:24Z", "hours": 5.5306, "text": "Im back… Again. I just realized I havent posted a devlog for most of the time ive been building, I genuinely thought I have, huh. So basically, Ive done quite a lot, created a notes app like in the tutorial, but I renamed mine golden record because, voyager… record… you get the idea right? The side bar and the notes in general were bugging out alot, getting them to work wasnt easy, and at some point information wasnt displaying, and I eventually found it was a single line of code I forgot to delete, its like im cursed with bugs like that. Anyways, Everything is working good now, and im almost done with version 1."}, {"post_id": 59902, "ts": "2026-09-01T22:29:41Z", "hours": 2.3914, "text": "So I worked on the drag feature for the window, that and the opening and closing as well. I encountered a problem where the code refusing to run properly but after looking at it for a few minutes, I saw it was a variable naming error (probably from the guide, not really a major issue) I made the handle a blackhole impression which the window is only moveable from that spot (the idea behind it is like a singularity pulling in the cursor and not wanting to let go, atleast thats what I want it to feel like) The close button is also functional now and I made the underlined SpaceOS text at the top corner be what would open the welcome screen again. ohh, yes, there was this issue where after I closed and reopened the window, the positions will be all wrong and cluttered, I did a little search and found a fix for it by changing the display function from flex to block. Ive also switched from inline CSS to external CSS file (although I had already used an external file for some earlier already.)"}, {"post_id": 59587, "ts": "2026-09-01T14:27:35Z", "hours": 2.3461, "text": "Alright, This is my attempt at the WebOS mission. I decided to make a space themed OS. As of right now I want the OS to work like a sort of exploration guide for different objects in space. I had a bit of an issue positioning the image, I was already getting a bit frustrated and almost went doom scrolling in frustration 😪, but guess what, I discovered the issue, it was just a simple sizing issue, everything else was okay. Can you IMAGINEEE, just sizing. Well anyways, this is what ive done as of now, the frog game about the flex attribute in the tutorial was quite helpful cause i was struggling with positioning otherwise. Theres a lot more features I want to add so ill need to do a little research first (especially for the javascript parts)."}]...
|
Title: SpaceOS by @NEBULA_X | Stardance
Devlogs:
Title: SpaceOS by @NEBULA_X | Stardance
Devlogs:
Alright, This is my attempt at the WebOS mission. I decided to make a space themed OS. As of right now I want the OS to work like a sort of exploration guide for different objects in space. I had a bit of an issue positioning the image, I was already getting a bit frustrated and almost went doom scrolling in frustration 😪, but guess what, I discovered the issue, it was just a simple sizing issue, everything else was okay. Can you IMAGINEEE, just sizing. Well anyways, this is what ive done as of now, the frog game about the flex attribute in the tutorial was quite helpful cause i was struggling with positioning otherwise. Theres a lot more features I want to add so ill need to do a little research first (especially for the javascript parts).
So I worked on the drag feature for the window, that and the opening and closing as well. I encountered a problem where the code refusing to run properly but after looking at it for a few minutes, I saw it was a variable naming error (probably from the guide, not really a major issue) I made the handle a blackhole impression which the window is only moveable from that spot (the idea behind it is like a singularity pulling in the cursor and not wanting to let go, atleast thats what I want it to feel like) The close button is also functional now and I made the underlined SpaceOS text at the top corner be what would open the welcome screen again. ohh, yes, there was this issue where after I closed and reopened the window, the positions will be all wrong and cluttered, I did a little search and found a fix for it by changing the display function from flex to block. Ive also switched from inline CSS to external CSS file (although I had already used an external file for some earlier already.)
Im back… Again. I just realized I havent posted a devlog for most of the time ive been building, I genuinely thought I have, huh. So basically, Ive done quite a lot, created a notes app like in the tutorial, but I renamed mine golden record because, voyager… record… you get the idea right? The side bar and the notes in general were bugging out alot, getting them to work wasnt easy, and at some point information wasnt displaying, and I eventually found it was a single line of code I forgot to delete, its like im cursed with bugs like that. Anyways, Everything is working good now, and im almost done with version 1....
|
1792691416.1476488
|
1793296216.1476488
|
|
11632
|
SunCalculator by @nitishvankina | Stardance
|
nitishvankina
|
0
|
7.47
|
0
|
[]
|
[{"post_id": 8178, "ts": "2026 [{"post_id": 8178, "ts": "2026-06-13T17:00:14Z", "hours": 7.4736, "text": "Currently, about 1 billion people around the world are deficient in Vitamin D. This is why i built the Sun Calculator. It measures how much sun exposure is needed in order to obtain a healthy amount of vitamin D. It measures local UV, and asks what clothes you are wearing. This allows for accurate results. Getting enough Vitamin D isn’t as simple as just “going outside.” It’s a delicate balancing act. Stay out too little, and your body doesn’t produce enough. Stay out too long, and you risk sunburn and UV damage. I realized that people needed a personalized approach. One-size-fits-all medical advice doesn’t work here because UV radiation changes by the hour, and everyone exposes different amounts of skin depending on their daily outfits."}]...
|
Title: SunCalculator by @nitishvankina | Stardance Title: SunCalculator by @nitishvankina | Stardance
Devlogs:
Currently, about 1 billion people around the world are deficient in Vitamin D. This is why i built the Sun Calculator. It measures how much sun exposure is needed in order to obtain a healthy amount of vitamin D. It measures local UV, and asks what clothes you are wearing. This allows for accurate results. Getting enough Vitamin D isn’t as simple as just “going outside.” It’s a delicate balancing act. Stay out too little, and your body doesn’t produce enough. Stay out too long, and you risk sunburn and UV damage. I realized that people needed a personalized approach. One-size-fits-all medical advice doesn’t work here because UV radiation changes by the hour, and everyone exposes different amounts of skin depending on their daily outfits....
|
1792914669.7465708
|
1793778669.7465708
|
|
277
|
Kadent by @hacha-mouse | Stardance
|
hacha-mouse
|
1
|
231.72
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T15:24:36Z", "hours": 229.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Kadent Kadent is a cross-platform DAW featuring KASL, a domain-specific audio language, and node-graph processing system. Features Create music with familiar track-based UI Two track types: Note Track & Audio Track Node graph for every track KASL language with syntax similar to Swift The node graph allows you to combine multiple KASL programs to perform much more complex processing. What Is a Node Graph? Kadent uses node graph for track processing. A Node is a processing unit that calculates the output. In node graph, an output of one node can be connected to an input of another node. This allows you to connect multiple inputs and outputs freely to other nodes to create sound. Then, why did I adopt node graph? KASL programs can have multiple inputs and outputs, and their types may also vary. So placing them in order does not work because the DAW cannot know which output is connected to the specific input. That’s why Kadent uses node graph. Characteristics of KASL Utilizes Cranelift as a backend for quicker JIT compilation Specialized type of variables such as input , output and state Supports fixed-length arrays and structs Fixed-count loop syntax for predictable execution time Module system influenced by Python Custom infix/prefix/postfix operators (even normal arithmetic operators are defined and provided by std ) KASL Sample Program audio module is built-in module provided by Kadent. Note that these programs below won’t work outside the DAW. Gain Node import audio import std input in = audio.zero_sample() input gain = 0.0 output out = audio.zero_sample() func main() { out = in * [gain; audio.max_channels] } Mix Node import std import std/math/float as f import audio input input_1 = audio.zero_sample() input input_2 = audio.zero_sample() input factor = 0.0 output out = audio.zero_sample() func main() { let clamped_factor = f.clamp(factor, 0.0, 1.0) let multiplied_input_1: audio.Sample = input_1 * [clamped_factor; audio.max_channels] let multiplied_input_2: audio.Sample = input_2 * [1.0 - clamped_factor; audio.max_channels] out = multiplied_input_1 + multiplied_input_2 } Sawtooth Wave Synthesizer import audio as a import std import std/math/float as f input notes = a.EventSlot() input pitch = 1.0 output out = a.zero_sample() state allocator = a.Allocator() let base_freq = 440.0 let volume = 0.1 func main() { allocator.update(notes) var i = 0 loop a.max_voices { let voice = allocator.voices[i] let freq = pitch * base_freq * f.pow(2.0, (voice.pitch - 69.0) / 12.0) if voice.is_active { let t = voice.age let sample = saw(freq: freq, time: t) out = out + [sample * volume; a.max_channels] } i = i + 1 } } func saw(freq f = 440.0, time t: Float) -> Float { return 2.0 * (t * f) % 1.0 - 1.0 } Installation Go to the Releases page of my GitHub repository to download the latest precompiled binary, or compile the binary yourself. Detailed installation steps are described in README .", "repo": "https://github.com/hatya-mouse/kadent", "demo": "https://github.com/hatya-mouse/kadent/releases/tag/v0.1.1"}]...
|
[{"post_id": 81784, "ts": "202 [{"post_id": 81784, "ts": "2026-10-22T14:10:13Z", "hours": 0.8664, "text": "How to add Note Region You can add note region by double-clicking in the timeline. To add notes to it, you need to select the region by clicking it first. Code Editor Error .kdp files are serialized project files, not a source code. You can create a new source file by clicking the src/ directory in the Code Editor. To add a source code to the note track, first open a node graph and add a KASL node to it. In the Inspector, you can specify the path to the source code (e.g. src/example.kasl). Added Some More Documentation I’ve added documentation with screenshots of each panels: Timeline Inspector Automation Node Graph Piano Roll Code Editor"}, {"post_id": 81773, "ts": "2026-10-22T13:18:48Z", "hours": 1.8489, "text": "Added Documentation I saw that the reviewer tried to open the binary project file in the code editor and failed so I’ve decided to add a some sort of tutorial or a documentation. I really wanted to add an interactive tutorial so that the reviewers and the users can know how Kadent works, but I didn’t have time to do so so I’ve just added a few documentation."}, {"post_id": 59408, "ts": "2026-09-01T06:49:17Z", "hours": 17.1803, "text": "Added License Browser It’s been a while since my last devlog! During this time I’ve added an Acknowledgements view where you can look at license text and other informations of the Fonts and Crates that I’ve used. It was a bit difficult to implement because there are so many crates, but I’m satisfied with the result."}, {"post_id": 56435, "ts": "2026-08-28T06:22:03Z", "hours": 41.4536, "text": "Improved code editor I’ve implemented error highlighting in the code editor. I also added a list of errors at the bottom of the code editor, and I can jump to the position of the error by clicking the error. TextEdit in egui does not support highlighting character by character and instead it only highlighting by each sections, so red underlined part may be bigger than the actual error range, but I guess it still looks nice."}, {"post_id": 52794, "ts": "2026-08-23T04:24:09Z", "hours": 10.9353, "text": "sode I’ve created a simple binary serialization crate called “sode” for Kadent. This guarantees that the output binary won’t change even if the struct is modified so I thought it would be better than serde or that sort of serialization library. impl Encode for Note { fn encode ( & self , e : & mut Encoder ) -> Result < (), EncodeError > { e .field ( 0 , & self .start ) ? ; e .field ( 1 , & self .duration ) ? ; e .field ( 2 , & self .pitch ) ? ; e .field ( 3 , & self .velocity ) ? ; Ok (()) } } impl Decode for Note { fn decode ( d : & mut ValueDecoder ) -> Result < Self , DecodeError > { let d = d .to_field_decoder () ? ; Ok ( Note :: new ( d .field ( 0 ) ? .ok_or ( DecodeError :: InvalidData ) ? , d .field ( 1 ) ? .ok_or ( DecodeError :: InvalidData ) ? , d .field ( 2 ) ? .ok_or ( DecodeError :: InvalidData ) ? , d .field ( 3 ) ? .ok_or ( DecodeError :: InvalidData ) ? , )) } }"}, {"post_id": 51188, "ts": "2026-08-20T18:06:44Z", "hours": 4.3567, "text": "Curve type selection I’ve implemented a selection dropdown for three curve types: linear, step, and smooth. Next thing to do is to add a text field to adjust the curve tension"}, {"post_id": 50847, "ts": "2026-08-20T09:11:52Z", "hours": 8.7028, "text": "Automation Automation is here. I’ve implemented an automation node, which is associated with an automation track that you can add keyframes to value that changes over time. You can even connect automation nodes to KASL Node to use the value for calculation!"}, {"post_id": 49569, "ts": "2026-08-18T13:30:07Z", "hours": 4.8889, "text": "Refactored codebase It looks exactly the same as the previous devlog, but I refactored the codebase, primarily the EditorUiState. I separated many members of EditorUiState to multiple small structs for better readability"}, {"post_id": 48851, "ts": "2026-08-17T12:25:43Z", "hours": 7.1642, "text": "Added ruler to piano roll I’ve added the ruler to the piano roll. This will make note placement easier and more intuitive than before. Also I refactored the codebase a little bit, but honestly I thought the previous implementation would be better so I may be putting it back soon."}, {"post_id": 47876, "ts": "2026-08-16T04:17:12Z", "hours": 11.8714, "text": "Add seconds support for region placement I’ve added TimePosition and TimeBounds to store the position of the region. They have two modes: one stores the position in Ticks, and another one stores it in seconds. Ticks and seconds can be calculated from each other using TempoMap."}, {"post_id": 46767, "ts": "2026-08-14T08:06:59Z", "hours": 11.5078, "text": "On-demamd resampling for audio tracks Audio regions require resampling because the sample rate of the source data may differ from the required sample rate. So far, the audio engine for Kadent has been resampling the entire audio data before playback or exporting. However, resampling audio data in advance takes a lot of CPU and increases the time it takes to prepare for playback. This time I made it resample the audio data on demand during playback. This makes audio thread not to store the massive resampled audio data. *sample rate: a value that indicates how many samples are in a single second *sample: a value that represents the sound wave’s loudness at a specific moment in time"}, {"post_id": 45991, "ts": "2026-08-12T20:39:49Z", "hours": 49.1206, "text": "Waveform Rendering & Scroll Bar This time, I’ve mainly implemented two features: waveform rendering and timeline scroll bar. Waveform I’ve added a waveform rendering logic to the timeline. I handled it by generating peak value data to render it quicker than calculating the peak value while rendering. After all, it looks pretty nice and scales perfectly when zooming with my trackpad. Timeline Scroll Bar Another feature I’ve added is a timeline scroll bar. It may not look appealing, but its calculation was quite hard actually. I had to calculate the ratio of the visible area and the entire timeline to get the width of the scroll bar. I think it is lot better than egui’s builtin scroll bar, so I’m quite satisfied with the outcome!"}, {"post_id": 20035, "ts": "2026-07-01T15:15:14Z", "hours": 1.9881, "text": "Ability to adjust project range I’ve implemented a feature that the user can adjust the project’s export range just by dragging the handle in the ruler. Also the actual number is shown in the status bar while the handle is being dragged so the user can know the exact beat where is going to be exported."}, {"post_id": 19709, "ts": "2026-07-01T03:15:36Z", "hours": 23.7522, "text": "Refactored the audio engine I’ve streamlined the note processing logic in the audio engine. So far, the audio engine handled sequenced notes (notes that you can see in the editor) and the realtime MIDI notes that you can play using some MIDI controllers differently. It also lacked maintainability. That’s why I’ve completely rebuilt the logic to unify the process. It also contributed to reduce the amount of code, and I’m happy with that."}, {"post_id": 16801, "ts": "2026-06-27T08:53:19Z", "hours": 3.0306, "text": "Added Status Bar I’ve added a new status bar, which shows some informations such as sample rate, buffer size and the selected content, at the bottom of the window. Fixed Node Graph Rendering Bug The node graph used to be rendered on the front of the header, but I finally fixed this by using Panel to limit the area where painter can draw the graph."}, {"post_id": 15135, "ts": "2026-06-24T16:22:43Z", "hours": 7.1325, "text": "Improved menu design I’ve improved the design of the menu by adjusting the button style. It took quite a long time because of egui’s a little bit confusing styling API. Refactor and optimize the audio engine I’ve refactored the audio engine by using integer ticks to manage time instead of f32 beats. By using integer ticks, it can be calculated even faster and more accurately."}, {"post_id": 12564, "ts": "2026-06-20T14:55:28Z", "hours": 1.1906, "text": "Nested dropdown menu for device selection I’ve improved a device selection feature by nesting the menu. Thanks to this, users can click a single headphones button to change the MIDI ports and output devices. Also I added some icons for these."}, {"post_id": 12510, "ts": "2026-06-20T13:06:52Z", "hours": 1.2117, "text": "Selectable audio output I’ve added a feature to select audio output! It may seem simple but it actually needed refactoring the audio engine and it took a lot of time."}, {"post_id": 12455, "ts": "2026-06-20T10:23:24Z", "hours": 2.4333, "text": "Replacing audio stream when switching devices I’ve implemented a logic in the audio engine, that allows the Kadent DAW to switch the output device. It was challenging because Mixer and MPSC consumers cannot be cloned. Finally I used Arc and Mutex in order to share the context with multiple threads. let callback_ctx = Arc::new(Mutex::new(OutputCallbackContext { mixer, command_cons, midi_cons, vu_prod, pending_project: pending_arc, })); I used try_lock instead of normal lock , which may block the thread, as you can see in the screenshot."}, {"post_id": 9312, "ts": "2026-06-15T16:59:09Z", "hours": 5.6553, "text": "KASL module system improvement So far, KASL compiler didn’t allow us to import external programs with the same name, because the name of the namespace conflicts. Today I have added new alias feature, which can be used like this: import foo as bar With this syntax, you can import a program named foo.kasl and refer to it with bar . This can also improve readability when importing a file with a long name! Streamline compilation I wanted to try compiling Kadent to application that can be installed using an installer, instead of a simple executable binary. I found Taskfile, which is a build tool similar to make but uses a yaml file to define workflows. I found it very useful so I adopted it and it worked very well! Currently I only have workflow for macOS compilation but I want to add Windows and Linux support soon!"}, {"post_id": 8724, "ts": "2026-06-14T14:21:32Z", "hours": 2.6775, "text": "Project creation dialog I’ve implemented new project creation dialog. You can specify the name of the project and select the folder using a picker from the system."}, {"post_id": 8532, "ts": "2026-06-14T06:06:41Z", "hours": 2.6142, "text": "Implemented splash screen I’ve finally finished implementing the splash screen for Kadent. On the left side, there are two buttons for creating or opening a project. The right panel shows the recent projects. Challenge The biggest challenge in implementing the splash screen was to layout UI components. It was quite hard to center the logo and the buttons. I spent around 1hrs dealing with that problem. Here’s how I solved it: const BUTTON_WIDTH : f32 = 300.0 ; const BUTTON_HEIGHT : f32 = 42.0 ; const CONTENT_HEIGHT : f32 = 60.0 + 12.0 + 16.0 + 24.0 + 12.0 + BUTTON_HEIGHT * 2.0 ; impl SplashUi { pub ( super ) fn splash_controls ( & mut self , ui : & mut egui :: Ui ) -> Option < EditorTransition > { ui .vertical_centered (| ui | { // Add space to vertically center the UI parts ui .add_space ( full_height / 2.0 - CONTENT_HEIGHT / 2.0 ); // UI Components }) .inner } } Since centering both horizontally and vertically while calculating the height of the inner content is painful, I eventually hardcoded the height of the UI components in order to center the UI vertically. Logo I’ve also designed a logo for Kadent in the meantime. I tweaked the font called “Inter”, which is available on Google Fonts, for the logo."}, {"post_id": 8172, "ts": "2026-06-13T16:50:03Z", "hours": 7.3775, "text": "Kadent — A DAW with custom language to create synths and effects Refactored project strucure As my codebase became bigger, it started to be a bit complicated, so I’ve refactored the codebase. New folder structure is consist of four directories in src/ directory: commands , core , storage , and ui . commands directory contains the audio engine communication logic. It has some functions like add_note that adds a new note to the specified track and sends the updated project to the audio thread. core directory contains KASLNode implementation and some metadata. KASLNode is a specific node that can literally execute KASL programs. Metadata is a data that are not necessarily tied to audio engine. It includes track colors, track names, region names, etc. storage directory contains some implementation for storing and loading files. It has a logic to save and load the Kadent project file. ui directory contains the UI implementation. Inside the ui directory, there are components , theme , and workspaces directories. components directory has some common UI parts used in various parts of the DAW. theme defines colors and size used in the UI. workspaces contains the UI implementation for the editor and the splash screen. Splash screen I’m currently implementing a splash screen for Kadent. It used to have just two buttons to create or open a project. I’ve just finished implementing “Recent Projects” list. (shown on the right side)"}, {"post_id": 4027, "ts": "2026-06-07T06:23:01Z", "hours": 1.4083, "text": "Implemented multithread track processing for the audio engine using Rayon ! I used to think implementing multithreading would be a nightmare, but I utilized Rayon which was actually very intuitive and easy to use. The screenshot shows the exact code where the tracks are being processed in parallel."}, {"post_id": 30, "ts": "2026-05-31T09:44:30Z", "hours": 1.7811, "text": "I am working on a WASM backend for my KASL language!"}]...
|
Title: Kadent by @hacha-mouse | Stardance
Devlogs Title: Kadent by @hacha-mouse | Stardance
Devlogs:
I am working on a WASM backend for my KASL language!
Implemented multithread track processing for the audio engine using Rayon ! I used to think implementing multithreading would be a nightmare, but I utilized Rayon which was actually very intuitive and easy to use. The screenshot shows the exact code where the tracks are being processed in parallel.
Kadent — A DAW with custom language to create synths and effects Refactored project strucure As my codebase became bigger, it started to be a bit complicated, so I’ve refactored the codebase. New folder structure is consist of four directories in src/ directory: commands , core , storage , and ui . commands directory contains the audio engine communication logic. It has some functions like add_note that adds a new note to the specified track and sends the updated project to the audio thread. core directory contains KASLNode implementation and some metadata. KASLNode is a specific node that can literally execute KASL programs. Metadata is a data that are not necessarily tied to audio engine. It includes track colors, track names, region names, etc. storage directory contains some implementation for storing and loading files. It has a logic to save and load the Kadent project file. ui directory contains the UI implementation. Inside the ui directory, there are components , theme , and workspaces directories. components directory has some common UI parts used in various parts of the DAW. theme defines colors and size used in the UI. workspaces contains the UI implementation for the editor and the splash screen. Splash screen I’m currently implementing a splash screen for Kadent. It used to have just two buttons to create or open a project. I’ve just finished implementing “Recent Projects” list. (shown on the right side)
Implemented splash screen I’ve finally finished implementing the splash screen for Kadent. On the left side, there are two buttons for creating or opening a project. The right panel shows the recent projects. Challenge The biggest challenge in implementing the splash screen was to layout UI components. It was quite hard to center the logo and the buttons. I spent around 1hrs dealing with that problem. Here’s how I solved it: const BUTTON_WIDTH : f32 = 300.0 ; const BUTTON_HEIGHT : f32 = 42.0 ; const CONTENT_HEIGHT : f32 = 60.0 + 12.0 + 16.0 + 24.0 + 12.0 + BUTTON_HEIGHT * 2.0 ; impl SplashUi { pub ( super ) fn splash_controls ( & mut self , ui : & mut egui :: Ui ) -> Option < EditorTransition > { ui .vertical_centered (| ui | { // Add space to vertically center the UI parts ui .add_space ( full_height / 2.0 - CONTENT_HEIGHT / 2.0 ); // UI Components }) .inner } } Since centering both horizontally and vertically while calculating the height of the inner content is painful, I eventually hardcoded the height of the UI components in order to center the UI vertically. Logo I’ve also designed a logo for Kadent in the meantime. I tweaked the font called “Inter”, which is available on Google Fonts, for the logo.
Project creation dialog I’ve implemented new project creation dialog. You can specify the name of the project and select the folder using a picker from the system.
KASL module system improvement So far, KASL compiler didn’t allow us to import external programs with the same name, because the name of the namespace conflicts. Today I have added new alias feature, which can be used like this: import foo as bar With this syntax, you can import a program named foo.kasl and refer to it with bar . This can also improve readability when importing a file with a long name! Streamline compilation I wanted to try compiling Kadent to application that can be installed using an installer, instead of a simple executable binary. I found Taskfile, which is a build tool similar to make but uses a yaml file to define workflows. I found it very useful so I adopted it and it worked very well! Currently I only have workflow for macOS compilation but I want to add Windows and Linux support soon!
Replacing audio stream when switching devices I’ve implemented a logic in the audio engine, that allows the Kadent DAW to switch the output device. It was challenging because Mixer and MPSC consumers cannot be cloned. Finally I used Arc and Mutex in order to share the context with multiple threads. let callback_ctx = Arc::new(Mutex::new(OutputCallbackContext { mixer, command_cons, midi_cons, vu_prod, pending_project: pending_arc, })); I used try_lock instead of normal lock , which may block the thread, as you can see in the screenshot.
Selectable audio output I’ve added a feature to select audio output! It may seem simple but it actually needed refactoring the audio engine and it took a lot of time.
Nested dropdown menu for device selection I’ve improved a device selection feature by nesting the menu. Thanks to this, users can click a single headphones button to change the MIDI ports and output devices. Also I added some icons for these.
Improved menu design I’ve improved the design of the menu by adjusting the button style. It took quite a long time because of egui’s a little bit confusing styling API. Refactor and optimize the audio engine I’ve refactored the audio engine by using integer ticks to manage time instead of f32 beats. By using integer ticks, it can be calculated even faster and more accurately.
Added Status Bar I’ve added a new status bar, which shows some informations such as sample rate, buffer size and the selected content, at the bottom of the window. Fixed Node Graph Rendering Bug The node graph used to be rendered on the front of the header, but I finally fixed this by using Panel to limit the area where painter can draw the graph.
Refactored the audio engine I’ve streamlined the note processing logic in the audio engine. So far, the audio engine handled sequenced notes (notes that you can see in the editor) and the realtime MIDI notes that you can play using some MIDI controllers differently. It also lacked maintainability. That’s why I’ve completely rebuilt the logic to unify the process. It also contributed to reduce the amount of code, and I’m happy with that.
Ability to adjust project range I’ve implemented a feature that the user can adjust the project’s export range just by dragging the handle in the ruler. Also the actual number is shown in the status bar while the handle is being dragged so the user can know the exact beat where is going to be exported.
Waveform Rendering & Scroll Bar This time, I’ve mainly implemented two features: waveform rendering and timeline scroll bar. Waveform I’ve added a waveform rendering logic to the timeline. I handled it by generating peak value data to render it quicker than calculating the peak value while rendering. After all, it looks pretty nice and scales perfectly when zooming with my trackpad. Timeline Scroll Bar Another feature I’ve added is a timeline scroll bar. It may not look appealing, but its calculation was quite hard actually. I had to calculate the ratio of the visible area and the entire timeline to get the width of the scroll bar. I think it is lot better than egui’s builtin scroll bar, so I’m quite satisfied with the outcome!
On-demamd resampling for audio tracks Audio regions require resampling because the sample rate of the source data may differ from the required sample rate. So far, the audio engine for Kadent has been resampling the entire audio data before playback or exporting. However, resampling audio data in advance takes a lot of CPU and increases the time it takes to prepare for playback. This time I made it resample the audio data on demand during playback. This makes audio thread not to store the massive resampled audio data. *sample rate: a value that indicates how many samples are in a single second *sample: a value that represents the sound wave’s loudness at a specific moment in time
Add seconds support for region placement I’ve added TimePosition and TimeBounds to store the position of the region. They have two modes: one stores the position in Ticks, and another one stores it in seconds. Ticks and seconds can be calculated from each other using TempoMap.
Added ruler to piano roll I’ve added the ruler to the piano roll. This will make note placement easier and more intuitive than before. Also I refactored the codebase a little bit, but honestly I thought the previous implementation would be better so I may be putting it back soon.
Refactored codebase It looks exactly the same as the previous devlog, but I refactored the codebase, primarily the EditorUiState. I separated many members of EditorUiState to multiple small structs for better readability
Automation Automation is here. I’ve implemented an automation node, which is associated with an automation track that you can add keyframes to value that changes over time. You can even connect automation nodes to KASL Node to use the value for calculation!
Curve type selection I’ve implemented a selection dropdown for three curve types: linear, step, and smooth. Next thing to do is to add a text field to adjust the curve tension
sode I’ve created a simple binary serialization crate called “sode” for Kadent. This guarantees that the output binary won’t change even if the struct is modified so I thought it would be better than serde or that sort of serialization library. impl Encode for Note { fn encode ( & self , e : & mut Encoder ) -> Result < (), EncodeError > { e .field ( 0 , & self .start ) ? ; e .field ( 1 , & self .duration ) ? ; e .field ( 2 , & self .pitch ) ? ; e .field ( 3 , & self .velocity ) ? ; Ok (()) } } impl Decode for Note { fn decode ( d : & mut ValueDecoder ) -> Result < Self , DecodeError > { let d = d .to_field_decoder () ? ; Ok ( Note :: new ( d .field ( 0 ) ? .ok_or ( DecodeError :: InvalidData ) ? , d .field ( 1 ) ? .ok_or ( DecodeError :: InvalidData ) ? , d .field ( 2 ) ? .ok_or ( DecodeError :: InvalidData ) ? , d .field ( 3 ) ? .ok_or ( DecodeError :: InvalidData ) ? , )) } }
Improved code editor I’ve implemented error highlighting in the code editor. I also added a list of errors at the bottom of the code editor, and I can jump to the position of the error by clicking the error. TextEdit in egui does not support highlighting character by character and instead it only highlighting by each sections, so red underlined part may be bigger than the actual error range, but I guess it still looks nice.
Added License Browser It’s been a while since my last devlog! During this time I’ve added an Acknowledgements view where you can look at license text and other informations of the Fonts and Crates that I’ve used. It was a bit difficult to implement because there are so many crates, but I’m satisfied with the result.
Added Documentation I saw that the reviewer tried to open the binary project file in the code editor and failed so I’ve decided to add a some sort of tutorial or a documentation. I really wanted to add an interactive tutorial so that the reviewers and the users can know how Kadent works, but I didn’t have time to do so so I’ve just added a few documentation.
How to add Note Region You can add note region by double-clicking in the timeline. To add notes to it, you need to select the region by clicking it first. Code Editor Error .kdp files are serialized project files, not a source code. You can create a new source file by clicking the src/ directory in the Code Editor. To add a source code to the note track, first open a node graph and add a KASL node to it. In the Inspector, you can specify the path to the source code (e.g. src/example.kasl). Added Some More Documentation I’ve added documentation with screenshots of each panels: Timeline Inspector Automation Node Graph Piano Roll Code Editor
Ships:
Kadent Kadent is a cross-platform DAW featuring KASL, a domain-specific audio language, and node-graph processing system. Features Create music with familiar track-based UI Two track types: Note Track & Audio Track Node graph for every track KASL language with syntax similar to Swift The node graph allows you to combine multiple KASL programs to perform much more complex processing. What Is a Node Graph? Kadent uses node graph for track processing. A Node is a processing unit that calculates the output. In node graph, an output of one node can be connected to an input of another node. This allows you to connect multiple inputs and outputs freely to other nodes to create sound. Then, why did I adopt node graph? KASL programs can have multiple inputs and outputs, and their types may also vary. So placing them in order does not work because the DAW cannot know which output is connected to the specific input. That’s why Kadent uses node graph. Characteristics of KASL Utilizes Cranelift as a backend for quicker JIT compilation Specialized type of variables such as input , output and state Supports fixed-length arrays and structs Fixed-count loop syntax for predictable execution time Module system influenced by Python Custom infix/prefix/postfix operators (even normal arithmetic operators are defined and provided by std ) KASL Sample Program audio module is built-in module provided by Kadent. Note that these programs below won’t work outside the DAW. Gain Node import audio import std input in = audio.zero_sample() input gain = 0.0 output out = audio.zero_sample() func main() { out = in * [gain; audio.max_channels] } Mix Node import std import std/math/float as f import audio input input_1 = audio.zero_sample() input input_2 = audio.zero_sample() input factor = 0.0 output out = audio.zero_sample() func main() { let clamped_factor = f.clamp(factor, 0.0, 1.0) let multiplied_input_1: audio.Sample = input_1 * [clamped_factor; audio.max_channels] let multiplied_input_2: audio.Sample = input_2 * [1.0 - clamped_factor; audio.max_channels] out = multiplied_input_1 + multiplied_input_2 } Sawtooth Wave Synthesizer import audio as a import std import std/math/float as f input notes = a.EventSlot() input pitch = 1.0 output out = a.zero_sample() state allocator = a.Allocator() let base_freq = 440.0 let volume = 0.1 func main() { allocator.update(notes) var i = 0 loop a.max_voices { let voice = allocator.voices[i] let freq = pitch * base_freq * f.pow(2.0, (voice.pitch - 69.0) / 12.0) if voice.is_active { let t = voice.age let sample = saw(freq: freq, time: t) out = out + [sample * volume; a.max_channels] } i = i + 1 } } func saw(freq f = 440.0, time t: Float) -> Float { return 2.0 * (t * f) % 1.0 - 1.0 } Installation Go to the Releases page of my GitHub repository to download the latest precompiled binary, or compile the binary yourself. Detailed installation steps are described in README ....
|
1792821302.779773
|
1792907702.779773
|
|
54929
|
Wisp by @TCG | Stardance
|
TCG
|
0
|
97.43
|
0
|
[]
|
[{"post_id": 81791, "ts": "202 [{"post_id": 81791, "ts": "2026-10-22T15:12:11Z", "hours": 5.3231, "text": "first static fire test!!!"}, {"post_id": 80182, "ts": "2026-10-16T16:07:41Z", "hours": 13.0125, "text": "before flying my rocket i wanted to validate that the firmware is working, for that i created simulated versions of sensor and actuator classes and injected them into the dependency chain and everything is working! i cant wait to fly this thing, here is a video of a simulation"}, {"post_id": 77340, "ts": "2026-10-06T16:50:10Z", "hours": 13.5108, "text": "im almost ready to fly! the only things missing are the log system on the rocket and tuning the pid, i will probably do a static fire this week!!"}, {"post_id": 76055, "ts": "2026-10-02T06:46:15Z", "hours": 15.7911, "text": "devlog #5, almost ready to static fire my tcv modle rocket! i have been working on the rocket monitor app and validated all systems, the only thing missing at this point is implementing the final radio commands for a launch, optionaly a pretty ui and transfering the log file over radio after the landing."}, {"post_id": 70659, "ts": "2026-09-19T15:21:06Z", "hours": 3.0878, "text": "i just went on a 3h UI sidequest adding completely unnecessary spotlights and a colorful polar coordinate system to the completely unnecessary 3D scene in my TVC model rocket control app, cuz i dont want to keep working on the rockets firmware"}, {"post_id": 70512, "ts": "2026-09-19T09:36:28Z", "hours": 12.5019, "text": "i made a lot of progress on the firmwear for the tvc rocket and the desktop controll center app, it now displays live imu and barometer data, the gimbal is now also working."}, {"post_id": 68690, "ts": "2026-09-15T15:27:34Z", "hours": 11.5517, "text": "devlog #4: i am working on the desktop app that will act as an controll center for the flights and testing, so far i have a few components down, i developed the protocol for the comunication over radio and to the radio device over usb, that was a lot of work because i never did anything with netwoking before but its all working now, this is a screenshot of the app so far and a graphic of the protocol i came up with (graphic made with claude)"}, {"post_id": 65858, "ts": "2026-09-11T08:59:25Z", "hours": 0.4314, "text": "OMG i just realised i routed Serial TX to TX and RX to RX on my pcb. I already orderd it so its to late now, i swear i checked this desing 5 times how did i miss this??? luckly there wont be too mutch data going though this so i can use SoftwearSerail for this but still i guess u never get rx and tx right the first time…"}, {"post_id": 65850, "ts": "2026-09-11T08:22:57Z", "hours": 3.6503, "text": "I’m somewhat done with the hardware. The flight computer arrived, and the selfdesigned PCB worked on the first try! I haven’t tested everything yet, but the buck-boost converter, battery protection, LDO, MCU, radio, and buzzer all work. I also almost finished 3D printing the rocket, only the body tube is still missing. I’m shooting for a dry mass of 170 g, and I’m well within that budget, so everything is going well so far. Next, I will be working on the communication protocol between the rocket and the ground station, and then write the firmware for the rocket."}, {"post_id": 58140, "ts": "2026-08-30T14:28:37Z", "hours": 18.5669, "text": "Hi, im building a model rocket that can actively control its accent by changing the direction its rocket motor points (thrust vector control or TVC). this is my first devlog i have been working on this for a month now but only recently heard about stardance so i already have made a lot of progress. Im done with modeling the rocket in onshape i also already desingd its flight conputer (alacer-1) and a usb to radio apter i call rocket-link in kicad. the flight computer is in production and the rocket link already arrived, so at the moment im writing the firmwear for it, developing a desktop app to act as a command center."}]...
|
Title: Wisp by @TCG | Stardance
Devlogs:
Hi, im b Title: Wisp by @TCG | Stardance
Devlogs:
Hi, im building a model rocket that can actively control its accent by changing the direction its rocket motor points (thrust vector control or TVC). this is my first devlog i have been working on this for a month now but only recently heard about stardance so i already have made a lot of progress. Im done with modeling the rocket in onshape i also already desingd its flight conputer (alacer-1) and a usb to radio apter i call rocket-link in kicad. the flight computer is in production and the rocket link already arrived, so at the moment im writing the firmwear for it, developing a desktop app to act as a command center.
I’m somewhat done with the hardware. The flight computer arrived, and the selfdesigned PCB worked on the first try! I haven’t tested everything yet, but the buck-boost converter, battery protection, LDO, MCU, radio, and buzzer all work. I also almost finished 3D printing the rocket, only the body tube is still missing. I’m shooting for a dry mass of 170 g, and I’m well within that budget, so everything is going well so far. Next, I will be working on the communication protocol between the rocket and the ground station, and then write the firmware for the rocket.
OMG i just realised i routed Serial TX to TX and RX to RX on my pcb. I already orderd it so its to late now, i swear i checked this desing 5 times how did i miss this??? luckly there wont be too mutch data going though this so i can use SoftwearSerail for this but still i guess u never get rx and tx right the first time…
devlog #4: i am working on the desktop app that will act as an controll center for the flights and testing, so far i have a few components down, i developed the protocol for the comunication over radio and to the radio device over usb, that was a lot of work because i never did anything with netwoking before but its all working now, this is a screenshot of the app so far and a graphic of the protocol i came up with (graphic made with claude)
i made a lot of progress on the firmwear for the tvc rocket and the desktop controll center app, it now displays live imu and barometer data, the gimbal is now also working.
i just went on a 3h UI sidequest adding completely unnecessary spotlights and a colorful polar coordinate system to the completely unnecessary 3D scene in my TVC model rocket control app, cuz i dont want to keep working on the rockets firmware
devlog #5, almost ready to static fire my tcv modle rocket! i have been working on the rocket monitor app and validated all systems, the only thing missing at this point is implementing the final radio commands for a launch, optionaly a pretty ui and transfering the log file over radio after the landing.
im almost ready to fly! the only things missing are the log system on the rocket and tuning the pid, i will probably do a static fire this week!!
before flying my rocket i wanted to validate that the firmware is working, for that i created simulated versions of sensor and actuator classes and injected them into the dependency chain and everything is working! i cant wait to fly this thing, here is a video of a simulation
first static fire test!!!...
|
1792810288.925927
|
1793415088.925927
|
|
70939
|
Orbit AI by @torren | Stardance
|
torren
|
0
|
9.81
|
0
|
[]
|
[{"post_id": 81793, "ts": "202 [{"post_id": 81793, "ts": "2026-10-22T15:28:34Z", "hours": 9.8053, "text": "Orbit started with a question: what if a personal AI assistant felt like something alive on your desktop? Over 10 hours, I worked on turning an animated black hole into an assistant I could actually talk to. I connected voice and text chat, added local speech, and built out saved conversations, file uploads, and scheduled tasks. Then came the frustrating part: getting it to use apps. Opening Spotify was easy. Getting it to play the right playlist instead of resuming an old song took more work. Groq’s free limits also forced me to rethink how much information Orbit sent with every action, moving simple commands entirely onto the computer. By the end, Orbit had Mac and Windows installers, and that black hole had started doing more than looking cool. Also I am not fully sure if I am going to give this out to people but if you are interested just comment on this devlog"}]...
|
Title: Orbit AI by @torren | Stardance
Devlogs:
O Title: Orbit AI by @torren | Stardance
Devlogs:
Orbit started with a question: what if a personal AI assistant felt like something alive on your desktop? Over 10 hours, I worked on turning an animated black hole into an assistant I could actually talk to. I connected voice and text chat, added local speech, and built out saved conversations, file uploads, and scheduled tasks. Then came the frustrating part: getting it to use apps. Opening Spotify was easy. Getting it to play the right playlist instead of resuming an old song took more work. Groq’s free limits also forced me to rethink how much information Orbit sent with every action, moving simple commands entirely onto the computer. By the end, Orbit had Mac and Windows installers, and that black hole had started doing more than looking cool. Also I am not fully sure if I am going to give this out to people but if you are interested just comment on this devlog...
|
1792684031.9524696
|
1793288831.9524696
|
|
62513
|
ASTRA by @MIREYA | Stardance
|
MIREYA
|
1
|
4.95
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-19T16:51:17Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "WHAT I MADE: I built ASTRA, a space customization website that helps users redesign their rooms based on their own preferences and budget. It doesn’t just throw random suggestions. It uses a weighted algorithm that scores designs on space, aesthetics, budget, and function, and shows the best 10 matches.The math behind it is Fibonacci Spirals and Golden Angle (137.5°) for perfect, natural-looking room layouts.WHAT PEOPLE SHOULD KNOW ABOUT TESTING IT: Test it by entering different room sizes, budgets, and styles. The recommendations will actually change based on YOUR weights, not just trends. Try giving high weight to budget vs. aesthetics and see the Top 10 list completely change. That’s the personalization.WHAT WAS CHALLENGING: Making math work for design. Translating Golden Angle and Fibonacci into a scoring system that feels natural, not robotic. And balancing 4 different user inputs into one fair compatibility score without bias.WHAT I’M PROUD OF: I made decision-making faster and more personal. Users focus on their own interest instead of relying on generic suggestions, and the whole system is backed by real mathematics found in nature.", "repo": "https://github.com/Mireya-examclarity/ASTRA-2", "demo": "https://mireya-examclarity.github.io/ASTRA-2/"}]...
|
[{"post_id": 81799, "ts": "202 [{"post_id": 81799, "ts": "2026-10-22T15:59:08Z", "hours": 0.5472, "text": "I finished one of my previous projects I’ve been working on (ASTRA). Now I removed flask.Pages doesn’t support Flask, so I moved all my DESIGNS dict and scoring logic to frontend JS (IN HTML).Also fixed that bug where Pastel Dream decor was a set {} not list []{ Brackets were giving me a tough time 😆} . Added radar chart and wishlist with localStorage. Now it actually deploys( as it should!!). I have also added fibonacci golden angle logic - golden as placement efficiency bonus. It’s not full spiral visualization yet but scoring now includes golden ratio factor in final weighted formula. That’s all I did today(! !)"}, {"post_id": 71675, "ts": "2026-09-21T09:08:15Z", "hours": 0.3994, "text": "I first built ASTRA on Streamlit. It worked locally, but once deployed, it kept sleeping. Every time someone opened the link after a while, it would show a sleeping screen and take forever to wake up. I realized a space design app can’t sleep when the user needs it, so I fixed it by rebuilding the entire app in Flask and deploying it through GitHub.Then when I tried to run Flask locally, I hit another wall - jinja2.exceptions.TemplateSyntaxError. Jinja couldn’t recognize my HTML syntax because I had used : inside {{ }} for my icons. I fixed that by moving the logic out of Jinja and into a clean JavaScript function.So I fixed two big things - I stopped the sleeping problem by leaving Streamlit for Flask, and I fixed the Jinja syntax clash that was breaking my localhost. I really hope this will work!!!."}, {"post_id": 69280, "ts": "2026-09-16T18:39:47Z", "hours": 2.0069, "text": "I actually worked on ExamClarity but it got saved on ASTRA but anyway I have added some more features in ExamClarity from my previous code."}, {"post_id": 68759, "ts": "2026-09-15T18:08:34Z", "hours": 1.6142, "text": "Just finished on ASTRA !. It took some real time to deploy this one.I was having some issues about the files in VS code but in the end I was able to revive it. ASTRA came out to be a little weird but its alright I’ll look into it later.Take a picture and see if it works yo!."}]...
|
Title: ASTRA by @MIREYA | Stardance
Devlogs:
Just Title: ASTRA by @MIREYA | Stardance
Devlogs:
Just finished on ASTRA !. It took some real time to deploy this one.I was having some issues about the files in VS code but in the end I was able to revive it. ASTRA came out to be a little weird but its alright I’ll look into it later.Take a picture and see if it works yo!.
I actually worked on ExamClarity but it got saved on ASTRA but anyway I have added some more features in ExamClarity from my previous code.
I first built ASTRA on Streamlit. It worked locally, but once deployed, it kept sleeping. Every time someone opened the link after a while, it would show a sleeping screen and take forever to wake up. I realized a space design app can’t sleep when the user needs it, so I fixed it by rebuilding the entire app in Flask and deploying it through GitHub.Then when I tried to run Flask locally, I hit another wall - jinja2.exceptions.TemplateSyntaxError. Jinja couldn’t recognize my HTML syntax because I had used : inside {{ }} for my icons. I fixed that by moving the logic out of Jinja and into a clean JavaScript function.So I fixed two big things - I stopped the sleeping problem by leaving Streamlit for Flask, and I fixed the Jinja syntax clash that was breaking my localhost. I really hope this will work!!!.
I finished one of my previous projects I’ve been working on (ASTRA). Now I removed flask.Pages doesn’t support Flask, so I moved all my DESIGNS dict and scoring logic to frontend JS (IN HTML).Also fixed that bug where Pastel Dream decor was a set {} not list []{ Brackets were giving me a tough time 😆} . Added radar chart and wishlist with localStorage. Now it actually deploys( as it should!!). I have also added fibonacci golden angle logic - golden as placement efficiency bonus. It’s not full spiral visualization yet but scoring now includes golden ratio factor in final weighted formula. That’s all I did today(! !)
Ships:
WHAT I MADE: I built ASTRA, a space customization website that helps users redesign their rooms based on their own preferences and budget. It doesn’t just throw random suggestions. It uses a weighted algorithm that scores designs on space, aesthetics, budget, and function, and shows the best 10 matches.The math behind it is Fibonacci Spirals and Golden Angle (137.5°) for perfect, natural-looking room layouts.WHAT PEOPLE SHOULD KNOW ABOUT TESTING IT: Test it by entering different room sizes, budgets, and styles. The recommendations will actually change based on YOUR weights, not just trends. Try giving high weight to budget vs. aesthetics and see the Top 10 list completely change. That’s the personalization.WHAT WAS CHALLENGING: Making math work for design. Translating Golden Angle and Fibonacci into a scoring system that feels natural, not robotic. And balancing 4 different user inputs into one fair compatibility score without bias.WHAT I’M PROUD OF: I made decision-making faster and more personal. Users focus on their own interest instead of relying on generic suggestions, and the whole system is backed by real mathematics found in nature....
|
1792813954.9962862
|
1792900354.9962862
|
|
5359
|
Multi Tenant Business Management Backend by @NHero Multi Tenant Business Management Backend by @NHero | Stardance...
|
NHero
|
1
|
45.34
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-10T18:18:26Z", "hours": 24.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What did you make? I built an open-source business management platform backend with authentication, Google OAuth, workspaces, clients, products/services, invoices, payments, analytics, PDF invoice generation, email delivery, and Docker support. What was challenging? Building a scalable architecture, writing integration tests, handling workspace permissions, debugging file uploads, and getting Puppeteer PDF generation working reliably in Docker. What are you proud of? The complete business workflow, clean architecture, Dockerized deployment, and 39+ integration tests that help ensure reliability. How can people test it? Docker setup and environment configuration are included. They can directly docker compose or run using bun or npm", "repo": "https://github.com/NHeroOP/Business-Management-System-Backend", "demo": "https://bms-api.nhero.xyz/"}]...
|
[{"post_id": 81802, "ts": "202 [{"post_id": 81802, "ts": "2026-10-22T16:22:15Z", "hours": 4.7819, "text": "Devlog 09 So, I combine two stardance projects (backend, frontend) into one (fullstack), at the time I thought I could ship both together but I had to have both repos connected in one project, I didn’t know at the time and I then abandoned the project and this project was the backend & I added the frontend repo to it so all the fronted devlogs are gone. In this devlog I will write the changes made to backend after the previous devlog + I will summarised what was done in the fronted so far and after this devlog, I will write the devlog as normal as you guys will catch up to speed. Backend (Express) In zod using z.number() or .date() were resulting in error if passed as a string as data would always get converted to string before reaching backend so i added z.coerce -> z.coerce.number() or .date Added github actions workflow to automatically pull changes and build with docker + fixed perms issue in Dockerfile. Added redirecting of / to /docs Frontend (NextJS) Auth Pages are done (Login, Signup, Forgot-Password, Reset-Password) with zod and react-hook-form validation Pages are made using shadcn ui components Home page is done with listing of business that user is a part of Sidebar, header, Create-business-form and BusinessCard, invoice table components are also commited"}, {"post_id": 14821, "ts": "2026-06-24T02:09:36Z", "hours": 12.4956, "text": "Devlog - 08 Since I was building a front end for this project and when designing the front end I didn’t had a route for getting all the businesses the logged in user is part of. So I added that route to show all the businesses on the home page of dashboard And also I have email, password login so I needed a route to verify the user who has used email password using a verification code sent on their email. So I updated the user model and added that route too. Next thing was I added those routes to my openApi docs and also I updated my readme.md and other mds in root docs/ folder. One more thing is left in this project is to have separate analytics routes for separate modules like clients analytics, products analytics then main dashboard analytics. I will make them once a get a jump on front end since I’m laking behind there"}, {"post_id": 7051, "ts": "2026-06-11T20:20:17Z", "hours": 4.06, "text": "Devlog - 07 Since its a Backend API so I needed to create a api endpoints docs to showcase the project to other people as some UI helps in showcasing I used scalar and openAPI docs for my project, It took me some time to understand what to do but I was finally able to do it And then during deployment I made an error of putting some dependencies into dev dependencies as they were prefixed with @ . Finally was able to get my docker deployment working"}, {"post_id": 6343, "ts": "2026-06-10T17:57:14Z", "hours": 0.4814, "text": "Devlog -6 Added a analytics endpoint and its time to end the backend project and move on to the frontend of the project. If issues come up designing the frontend, will have to comeback to fix it. Till then i have deployed it with docker on railway.com"}, {"post_id": 6303, "ts": "2026-06-10T16:33:42Z", "hours": 1.8367, "text": "Devlog - 05 After adding tests, I decided to dockerize the project. But i was using puppeteer and it causes some issues in docker so i changed it to puppeteer-core and add install commands for chromium separately in docker file. I made everything work after some brutal hours of debugging and fixing and learning as this is my first time working with docker"}, {"post_id": 5832, "ts": "2026-06-09T19:30:25Z", "hours": 10.0192, "text": "Devlog 4 - Backend Testing Marathon 🧪 Spent few days building out integration tests for my Express + TypeScript backend. Added test coverage for: User registration & login Refresh token flow Forgot/reset password Clients Products (including file uploads) Invoices & payments Workspace/business authorization Also set up: MongoDB Memory Server for isolated test databases Factories for generating users, businesses, invoices, products, etc. Mocks for Cloudinary, Resend, and bcrypt Ran into a pretty annoying EPIPE error while testing multipart file uploads. After a lot of debugging, I tracked it down to file stream handling in tests. Switching upload tests to use Buffers instead of fixture files made the suite stable again. Current stats: 39 tests 15 test files Full integration test suite passing ✅"}, {"post_id": 3764, "ts": "2026-06-06T20:16:39Z", "hours": 2.3275, "text": "Refactoring code and setup for tests"}, {"post_id": 2613, "ts": "2026-06-05T07:23:35Z", "hours": 4.2178, "text": "Bug Fixes, And Logic Polishing"}, {"post_id": 959, "ts": "2026-06-02T18:45:41Z", "hours": 4.6642, "text": "Added Zod validation to the project"}]...
|
Title: Multi Tenant Business Management Backend by Title: Multi Tenant Business Management Backend by @NHero | Stardance
Devlogs:
Added Zod validation to the project
Bug Fixes, And Logic Polishing
Refactoring code and setup for tests
Devlog 4 - Backend Testing Marathon 🧪 Spent few days building out integration tests for my Express + TypeScript backend. Added test coverage for: User registration & login Refresh token flow Forgot/reset password Clients Products (including file uploads) Invoices & payments Workspace/business authorization Also set up: MongoDB Memory Server for isolated test databases Factories for generating users, businesses, invoices, products, etc. Mocks for Cloudinary, Resend, and bcrypt Ran into a pretty annoying EPIPE error while testing multipart file uploads. After a lot of debugging, I tracked it down to file stream handling in tests. Switching upload tests to use Buffers instead of fixture files made the suite stable again. Current stats: 39 tests 15 test files Full integration test suite passing ✅
Devlog - 05 After adding tests, I decided to dockerize the project. But i was using puppeteer and it causes some issues in docker so i changed it to puppeteer-core and add install commands for chromium separately in docker file. I made everything work after some brutal hours of debugging and fixing and learning as this is my first time working with docker
Devlog -6 Added a analytics endpoint and its time to end the backend project and move on to the frontend of the project. If issues come up designing the frontend, will have to comeback to fix it. Till then i have deployed it with docker on railway.com
Devlog - 07 Since its a Backend API so I needed to create a api endpoints docs to showcase the project to other people as some UI helps in showcasing I used scalar and openAPI docs for my project, It took me some time to understand what to do but I was finally able to do it And then during deployment I made an error of putting some dependencies into dev dependencies as they were prefixed with @ . Finally was able to get my docker deployment working
Devlog - 08 Since I was building a front end for this project and when designing the front end I didn’t had a route for getting all the businesses the logged in user is part of. So I added that route to show all the businesses on the home page of dashboard And also I have email, password login so I needed a route to verify the user who has used email password using a verification code sent on their email. So I updated the user model and added that route too. Next thing was I added those routes to my openApi docs and also I updated my readme.md and other mds in root docs/ folder. One more thing is left in this project is to have separate analytics routes for separate modules like clients analytics, products analytics then main dashboard analytics. I will make them once a get a jump on front end since I’m laking behind there
Devlog 09 So, I combine two stardance projects (backend, frontend) into one (fullstack), at the time I thought I could ship both together but I had to have both repos connected in one project, I didn’t know at the time and I then abandoned the project and this project was the backend & I added the frontend repo to it so all the fronted devlogs are gone. In this devlog I will write the changes made to backend after the previous devlog + I will summarised what was done in the fronted so far and after this devlog, I will write the devlog as normal as you guys will catch up to speed. Backend (Express) In zod using z.number() or .date() were resulting in error if passed as a string as data would always get converted to string before reaching backend so i added z.coerce -> z.coerce.number() or .date Added github actions workflow to automatically pull changes and build with docker + fixed perms issue in Dockerfile. Added redirecting of / to /docs Frontend (NextJS) Auth Pages are done (Login, Signup, Forgot-Password, Reset-Password) with zod and react-hook-form validation Pages are made using shadcn ui components Home page is done with listing of business that user is a part of Sidebar, header, Create-business-form and BusinessCard, invoice table components are also commited
Ships:
What did you make? I built an open-source business management platform backend with authentication, Google OAuth, workspaces, clients, products/services, invoices, payments, analytics, PDF invoice generation, email delivery, and Docker support. What was challenging? Building a scalable architecture, writing integration tests, handling workspace permissions, debugging file uploads, and getting Puppeteer PDF generation working reliably in Docker. What are you proud of? The complete business workflow, clean architecture, Dockerized deployment, and 39+ integration tests that help ensure reliability. How can people test it? Docker setup and environment configuration are included. They can directly docker compose or run using bun or npm...
|
1792824611.2255344
|
1792911011.2255344
|
|
36675
|
Minions Tower Defense by @TyrannoJ | Stardance
|
TyrannoJ
|
0
|
33.27
|
0
|
[]
|
[{"post_id": 81807, "ts": "202 [{"post_id": 81807, "ts": "2026-10-22T16:26:49Z", "hours": 3.1847, "text": "Devlog 6 I coded basically all afternoon yesterday, game development is so fun!!! What I did Make little pillars on the mouse, so the user knows where he’s pointing start work on new pathfinding made little squares that detect, if theres’s something in them for that (yay loading time) What I’ll do next the complicated part of pathfinding :( Make the people walk around less stupidly Anyway, hope Godot doesn’t crash while downloading GTA, so thanks for reading and Bye"}, {"post_id": 81280, "ts": "2026-10-20T16:37:07Z", "hours": 6.8211, "text": "Devlog 5 I havent’t devlogged in a long time as I was doing other stuff, but I’m back What I made Improved the animations for the characters (IK yay) Added a spawn control node to place enemy spawners made wall animations better gave color to the base made improvements to the player spawner and a bit of stuff I did two months ago but basically forgot :) What I’ll do next Improve the random walking make player interaction better lots of stuff Anyways I’m back, hope to finish this before Stardance ends. Thanks for reading, have a nice one"}, {"post_id": 42294, "ts": "2026-08-06T22:51:18Z", "hours": 6.7661, "text": "Devlog 4 I have now started to work on the gameplay and not just on the tools for playing: -I added an enemy spawner, where they spawn, get weapons and then run to attack the base -A player spawner where you can spawn your minions -And a weapon generator to give your people weapons to defend your base Also i made a tool to create areas which i will give different functionalities but right now they just keep the persons in so they have to fight at that spot Next I’ll be working on giving the game some structure so it becomes more fun Have a nice day"}, {"post_id": 39711, "ts": "2026-08-02T20:53:49Z", "hours": 4.0011, "text": "Devlog 3 I made some walls around the base to protect and did a little code restructuring Also the walls crumble when the enemys attack them, took me a while to figure out shape keys in blender and that they don’t like booleans but it works now Have a nice day, Bye"}, {"post_id": 36575, "ts": "2026-07-28T19:44:02Z", "hours": 4.4303, "text": "Devlog 2 okay so, i worked on the looks today, I made a character model in blender, rigged it and made a simple walk cycle Then i updated my project to godot 4.7 to use inverse kinematics I played around with them a bit and now i have a character who can walk and hit others with the new custom made sword Thats about it for today, have a nice one"}, {"post_id": 35723, "ts": "2026-07-27T10:42:05Z", "hours": 8.0672, "text": "Devlog 1 This is a game created in Godot. I havent really decided what the final product should be, but here is what i have done so far I have implemented minions walking around randomly They can also go to designated spots using a self made pathfinding and follow the mouse So far there are red and blue minions, when they meet they follow and damage each other Right now the objective of the game is to steer the blue guys to defend your base from the red guys I also implemented some fun stuff like inspecting the players and seeing their health and kills That’s about all I’ve done so far Thank you for reading, have a nice day"}]...
|
Title: Minions Tower Defense by @TyrannoJ | Starda Title: Minions Tower Defense by @TyrannoJ | Stardance
Devlogs:
Devlog 1 This is a game created in Godot. I havent really decided what the final product should be, but here is what i have done so far I have implemented minions walking around randomly They can also go to designated spots using a self made pathfinding and follow the mouse So far there are red and blue minions, when they meet they follow and damage each other Right now the objective of the game is to steer the blue guys to defend your base from the red guys I also implemented some fun stuff like inspecting the players and seeing their health and kills That’s about all I’ve done so far Thank you for reading, have a nice day
Devlog 2 okay so, i worked on the looks today, I made a character model in blender, rigged it and made a simple walk cycle Then i updated my project to godot 4.7 to use inverse kinematics I played around with them a bit and now i have a character who can walk and hit others with the new custom made sword Thats about it for today, have a nice one
Devlog 3 I made some walls around the base to protect and did a little code restructuring Also the walls crumble when the enemys attack them, took me a while to figure out shape keys in blender and that they don’t like booleans but it works now Have a nice day, Bye
Devlog 4 I have now started to work on the gameplay and not just on the tools for playing: -I added an enemy spawner, where they spawn, get weapons and then run to attack the base -A player spawner where you can spawn your minions -And a weapon generator to give your people weapons to defend your base Also i made a tool to create areas which i will give different functionalities but right now they just keep the persons in so they have to fight at that spot Next I’ll be working on giving the game some structure so it becomes more fun Have a nice day
Devlog 5 I havent’t devlogged in a long time as I was doing other stuff, but I’m back What I made Improved the animations for the characters (IK yay) Added a spawn control node to place enemy spawners made wall animations better gave color to the base made improvements to the player spawner and a bit of stuff I did two months ago but basically forgot :) What I’ll do next Improve the random walking make player interaction better lots of stuff Anyways I’m back, hope to finish this before Stardance ends. Thanks for reading, have a nice one
Devlog 6 I coded basically all afternoon yesterday, game development is so fun!!! What I did Make little pillars on the mouse, so the user knows where he’s pointing start work on new pathfinding made little squares that detect, if theres’s something in them for that (yay loading time) What I’ll do next the complicated part of pathfinding :( Make the people walk around less stupidly Anyway, hope Godot doesn’t crash while downloading GTA, so thanks for reading and Bye...
|
1792756549.4597914
|
1793361349.4597914
|
|
70946
|
unlock the shop by @strawberry | Stardance
|
strawberry
|
0
|
0.27
|
0
|
[]
|
[{"post_id": 81814, "ts": "202 [{"post_id": 81814, "ts": "2026-10-22T16:35:19Z", "hours": 0.2653, "text": "meow meow give me stickers please"}]...
|
Title: unlock the shop by @strawberry | Stardance
Title: unlock the shop by @strawberry | Stardance
Devlogs:
meow meow give me stickers please...
|
1792687638.2711866
|
1793292438.2711866
|
|
69879
|
JT Innoventions Website by @ahmadhassan | Stardanc JT Innoventions Website by @ahmadhassan | Stardance...
|
ahmadhassan
|
1
|
10.11
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-15T15:43:24Z", "hours": 9.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a website for my school’s science olympiad where students from various schools come and participate in several STEM categories. This website was mainly to showcase our event and allow users to register for the event. I used another application to make the forms then integrated it to google sheets. I have attached some screenshots but i would recommend to check it out using this url: https://lgsjtinnoventions.com", "repo": "https://github.com/ahmad-56/jtinno26", "demo": "https://lgsjtinnoventions.com"}]...
|
[{"post_id": 81816, "ts": "202 [{"post_id": 81816, "ts": "2026-10-22T16:52:09Z", "hours": 1.1147, "text": "LGS JT Innoventions 2026 Hey Everyone, I worked on this website for our school’s science event. The event was a STEM Olympiad for Highschool students, therefore the webiste had a tech inspired layout and theme. The fonts used, background images and the category images were all integrated in such sense to make sure that the website gave the user the vibes of the event itself. To visit it yourself please use this url: https://www.lgsjtinnoventions.com/ Moreover coming to the features: Website is used by delegates to get a know-how of the event and their specific categories In the background we have the school’s picture followed up by a black overlay to create tech vibes. The cursor has a Hover Glow Effect The Header The Header or the navigation bar had some unique features such as Scroll Response . Wehnever the user scrolls to a new section the header is updated accordingly. For categories a Drop Down Menu was added for even easier navigation. Hero Tried to keep it simple, user is met by: logo date timer (now that the event is over, the countdown timer has automatically switched to a text message) registration button (most imp as this is what they are here for) The Category Page displays the logos of each category and allows users to download the study guides for each one of them. On hover a small decription is shown. When clicked users are redirected to specific category pages where they can download the studyguide or it in browser is given. The registrations section. The form was made in Fillout Forms which was integerated with Google Sheets so that the Event Management team could easily configure who has registered for the event. Note: Registration form is closed now. About Section Simple description about the event and its history. Sponsor(s) + Contact Section Location + Links Footer For credits and rights reservation Google Search Console & SEO Added meta descriptions for search results Connected it to Google Search Console to monitor its visibility in Google Search Please visit website or see attached images"}, {"post_id": 79826, "ts": "2026-10-15T15:36:59Z", "hours": 8.6447, "text": "I worked on school science event website"}]...
|
Title: JT Innoventions Website by @ahmadhassan | S Title: JT Innoventions Website by @ahmadhassan | Stardance
Devlogs:
I worked on school science event website
LGS JT Innoventions 2026 Hey Everyone, I worked on this website for our school’s science event. The event was a STEM Olympiad for Highschool students, therefore the webiste had a tech inspired layout and theme. The fonts used, background images and the category images were all integrated in such sense to make sure that the website gave the user the vibes of the event itself. To visit it yourself please use this url: https://www.lgsjtinnoventions.com/ Moreover coming to the features: Website is used by delegates to get a know-how of the event and their specific categories In the background we have the school’s picture followed up by a black overlay to create tech vibes. The cursor has a Hover Glow Effect The Header The Header or the navigation bar had some unique features such as Scroll Response . Wehnever the user scrolls to a new section the header is updated accordingly. For categories a Drop Down Menu was added for even easier navigation. Hero Tried to keep it simple, user is met by: logo date timer (now that the event is over, the countdown timer has automatically switched to a text message) registration button (most imp as this is what they are here for) The Category Page displays the logos of each category and allows users to download the study guides for each one of them. On hover a small decription is shown. When clicked users are redirected to specific category pages where they can download the studyguide or it in browser is given. The registrations section. The form was made in Fillout Forms which was integerated with Google Sheets so that the Event Management team could easily configure who has registered for the event. Note: Registration form is closed now. About Section Simple description about the event and its history. Sponsor(s) + Contact Section Location + Links Footer For credits and rights reservation Google Search Console & SEO Added meta descriptions for search results Connected it to Google Search Console to monitor its visibility in Google Search Please visit website or see attached images
Ships:
I made a website for my school’s science olympiad where students from various schools come and participate in several STEM categories. This website was mainly to showcase our event and allow users to register for the event. I used another application to make the forms then integrated it to google sheets. I have attached some screenshots but i would recommend to check it out using this url: https://lgsjtinnoventions.com...
|
1792810316.4602473
|
1792896716.4602473
|
|
69741
|
Orbital! by @Yousuff | Stardance
|
Yousuff
|
1
|
16.96
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-22T13:13:09Z", "hours": 16.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "ORBITAL - SPACESHIP IIN SPREADSHEET !! A satellite survival game made in Excel VBA. Project inspired for Wrong by Hack Club ! TO PLAY ORBITAL - Download the spreadsheet and click on Launch Game on sheet 1 or just go to sheet 2 and press Start. About ORBITAL is a small game built entirely in Microsoft Excel using VBA. Dodge space debris, switch lanes and survive as long as you can. Rocket 1 - Level 1 - 5 Rocket 2 - Level 6 to the end ! same for the Asteroids ! they are danger !!!! Controls A / ← — Move left D / → — Move right STOP / RESUME — Pause and continue RESTART MISSION — Restart MENU — Return to the menu Running the game Download ORBITAL.xlsm . Open it in desktop Microsoft Excel. Enable macros if prompted. Open the About Orbital sheet and click LAUNCH ORBITAL . Built with Microsoft Excel - Engine ig VBA Doodle (my personal art space) - to design Rockets and Debris please try Doodle too! Custom game sprites AI Usage ? yes I used but -> as ofc VBM was veryyy new for me! This project does use AI, but only for coding help when I got stuck, mainly with bugs and figuring out why certain things weren’t working as expected. I used it to help debug and get past issues I couldn’t solve on my own. No AI was used to create the assets or decide the creative direction of ORBITAL. The visuals, game design, and overall idea were my own. AI was basically just there when the code decided to ruin my days 😭", "repo": "https://github.com/YousufProjs-exe/Orbital", "demo": "https://github.com/YousufProjs-exe/Orbital/releases/tag/v1"}]...
|
[{"post_id": 81817, "ts": "202 [{"post_id": 81817, "ts": "2026-10-22T16:53:08Z", "hours": 0.9578, "text": "Fixed the code arrangement problem in VBM editor"}, {"post_id": 80723, "ts": "2026-10-18T16:48:05Z", "hours": 8.1406, "text": "Orbital is now finally done - with multiple levels but the game changes from level 6 - the change can break ur streaks too, be careful"}, {"post_id": 80001, "ts": "2026-10-15T21:08:35Z", "hours": 4.7022, "text": "Finally - after soooo amny trys, Main Menu is here with a working Start button : also to make the Start Button Work it was the hardest part!"}, {"post_id": 79779, "ts": "2026-10-15T11:48:25Z", "hours": 1.3194, "text": "Orbital now have - our spaceships enemy !! - dodge the derby."}, {"post_id": 79738, "ts": "2026-10-15T08:15:25Z", "hours": 2.1306, "text": "Orbital - the main board, 3 lanes, the satellite and movements are initialized - to use them - adding buttons r next !"}]...
|
Title: Orbital! by @Yousuff | Stardance
Devlogs:
Title: Orbital! by @Yousuff | Stardance
Devlogs:
Orbital - the main board, 3 lanes, the satellite and movements are initialized - to use them - adding buttons r next !
Orbital now have - our spaceships enemy !! - dodge the derby.
Finally - after soooo amny trys, Main Menu is here with a working Start button : also to make the Start Button Work it was the hardest part!
Orbital is now finally done - with multiple levels but the game changes from level 6 - the change can break ur streaks too, be careful
Fixed the code arrangement problem in VBM editor
Ships:
ORBITAL - SPACESHIP IIN SPREADSHEET !! A satellite survival game made in Excel VBA. Project inspired for Wrong by Hack Club ! TO PLAY ORBITAL - Download the spreadsheet and click on Launch Game on sheet 1 or just go to sheet 2 and press Start. About ORBITAL is a small game built entirely in Microsoft Excel using VBA. Dodge space debris, switch lanes and survive as long as you can. Rocket 1 - Level 1 - 5 Rocket 2 - Level 6 to the end ! same for the Asteroids ! they are danger !!!! Controls A / ← — Move left D / → — Move right STOP / RESUME — Pause and continue RESTART MISSION — Restart MENU — Return to the menu Running the game Download ORBITAL.xlsm . Open it in desktop Microsoft Excel. Enable macros if prompted. Open the About Orbital sheet and click LAUNCH ORBITAL . Built with Microsoft Excel - Engine ig VBA Doodle (my personal art space) - to design Rockets and Debris please try Doodle too! Custom game sprites AI Usage ? yes I used but -> as ofc VBM was veryyy new for me! This project does use AI, but only for coding help when I got stuck, mainly with bugs and figuring out why certain things weren’t working as expected. I used it to help debug and get past issues I couldn’t solve on my own. No AI was used to create the assets or decide the creative direction of ORBITAL. The visuals, game design, and overall idea were my own. AI was basically just there when the code decided to ruin my days 😭...
|
1792857342.2411206
|
1792943742.2411206
|
|
1507
|
Sub 100 Wh portable power station by @win7 | Stard Sub 100 Wh portable power station by @win7 | Stardance...
|
win7
|
0
|
232.03
|
0
|
[]
|
[{"post_id": 81818, "ts": "202 [{"post_id": 81818, "ts": "2026-10-22T16:59:23Z", "hours": 0.6336, "text": "Finally replaced the MDP1933 MOSFETs with beefier IRFB4110 MOSFETs, but boy was it expensive! Whenever we replace blown MOSFETs, its a good practice to replace the entire array even if one MOSFET is blown and the others work perfectly fine since you never know if the voltage spike or whatever calamity had partially destroyed it (it would fail to close properly, dropping a lot of voltage) Atleast the inverter’s been fixed now (or is it..?) and outputs a clean 230 V RMS. Tested with a 20 W lamp and it works well. Need to replace the 35 A automotive fuse on it as well since it was also blown due to the direct short that occurred, I’m using a piece of solder wire as a temporary substitute (not recommended btw) Need to test with bigger loads to ensure that its back at business and nothing else was damaged due to the overload. Also worked on the Instructable for the past two days while waiting to get the MOSFETs."}, {"post_id": 81032, "ts": "2026-10-19T16:53:58Z", "hours": 0.4167, "text": "Switching to daily devlogs from now on.. Worked on the broken inverter. Tried replacing the MOSFETS with a different ones. The original ones were MDP1933, with a drain to source resistance of less than 5 milliohms, while the ones I replaced with were IRFZ44N and featured a drain to source resistance of 15 milliohms. I need to find a stronger MOSFET than the original MDP1933 used in the build and also upgrade my table’s sticker to gray :D"}, {"post_id": 80699, "ts": "2026-10-18T15:31:28Z", "hours": 9.7653, "text": "After a full 2-week fever, I’m back into business :D. Things aren’t great to start off. To sum it up, the inverter died after I connected a chineese steamer apparently rated for “120 W”, when in reality, it drew around 500 W from my wall. My inverter tried to maintain its voltage and ended up killing its MOSFETS. I really hope the MOSFETS are the only ones damaged."}, {"post_id": 73669, "ts": "2026-09-25T17:07:41Z", "hours": 7.9381, "text": "Had to tear the unit down, do plastic welding since the screw mounting slots broke. Probably I would rate this as a 0/10 in the reparability scale by myself -_-. Also, bypassed the 10 V regulator on the charger boost converter module and now it can work from 9V. Planned to add another separate boost converter for the inverter to prevent inverter’s low voltage protection from kicking in. Bypassed the regulator here as well. I feel kinda lazy and tired, probably will log more time from tomorrow,,"}, {"post_id": 71826, "ts": "2026-09-21T16:47:09Z", "hours": 9.3172, "text": "Had to harvest a boost converter from my old bench power supply, fix it (it was dead shorted due to an internally shorted capacitor) Planning on adding a pre-boost converter for the inverter and the charger functions. They refuse to work below 10.2 V, disregarding 20~30% of battery capacity. Recorded the voltage, current, milliamp hours, power drawn along with time stamps. Gosh, my hands are numb now -_-."}, {"post_id": 71159, "ts": "2026-09-20T11:30:16Z", "hours": 9.6525, "text": "Welp, killed another boost converter. This one failed by having its output voltage always equal to the input voltage no matter what, unlike previously where the boost converter failed as a direct short. Other than this, I spent a lot of time troubleshooting the charging MPPT function, which seemed to not have proper limit and tripped whatever charger I had connected it to. Had to change the values quite a bit but nothing helped. In the end I noticed that the initial_in_voltage variable was set to the absolute minimum trigger point whenever the charger was connected, therefore the condition where the (initial_in_voltage - in_voltage variable <= 0.2) inequation is always held true and therefore the Arduino ramped up the PWM no matter what, it took a ton of time to figure out -_- In addition to this, I had also spent a around 2h in testing the power station regarding its thermals and max. power capability.."}, {"post_id": 70210, "ts": "2026-09-18T18:28:05Z", "hours": 3.8333, "text": "Successfully completed the soft started board in order to prevent the inrush current drawn by the XL4016 module from tripping certain chargers. It felt endless, I had to use 2 NPN transistors in an inverter configuration in order to not use a PNP transistor since I did not have one lol. Also 3D printed and replaced the old battery case for a newer one which has ventilation holes, helping in keeping the battery temperatures low.."}, {"post_id": 70113, "ts": "2026-09-18T14:21:50Z", "hours": 7.6569, "text": "In the process of making the soft starter circuit for the XL4016 module, since the inrush current trips some chargers, I’m set on using a 555 timer chip in order to turn on a relay 2s after powering on the relay. Anyways, tested the bare-bones version of the power station at around 100 W and/or 10A of current and it worked beautifully, though I was scared to my core when doing so, not wanting this setup to blow up like last time which killed the boost converter and both the charger modules."}, {"post_id": 69616, "ts": "2026-09-17T12:56:32Z", "hours": 9.4322, "text": "Printed the left side panel, tried to print the bottom panel but failed, also the BOM list final is ready!! Well, seems like the assembly process is going to be hard due to a ton of wires and obstacles :( Had to trim the direct source connector panel twice for it to fit in the right side panel Boost converter module is held under really high amount of tension probably due to 10mm bolt and nuts. Made orientation and placement mistakes while installing the chargers panel -_-"}, {"post_id": 69073, "ts": "2026-09-16T10:15:00Z", "hours": 9.6933, "text": "Looked through the designs and measurements, edited them when necessary, tested the charging circuit, not sure why but it trips my MacBook’s PD 30 W charger but not my Samsung PD power bank, probably due to inrush currents. After a long conflict, finally printed the right side panel, need to proceed with the left, top, bottom and back panel as well. I don’t know, I’m scared to waste ~100g of filament and ~10h of time over a failed print just because of a dimensional mistake or inaccuracy, I’m just looking through the final model in Fusion 360 countless times,!"}, {"post_id": 68037, "ts": "2026-09-14T12:41:01Z", "hours": 9.7931, "text": "Birthday devlog today🎉! Did a ton more of CAD work, including modification of slots and sketches, and boy was it painful!. I had to re-draw each sketch on top and repeat this once again since I need one for negative extrusion and one for filling the already existing slots. All caused by my poor judgement of the dimensions of the other parts But here I am! Also, had tweaked the code a little, did some power wire replacements and stuff"}, {"post_id": 66828, "ts": "2026-09-12T18:50:31Z", "hours": 7.2039, "text": "Working on the mainboard mount. The mainboard is planned to be mounted on top of the battery pack. Not sure how I’m gonna figure out how to make mounting holes on the bottom panel. Its 12:20 AM rn, need to go to bed,,,"}, {"post_id": 66084, "ts": "2026-09-11T17:35:16Z", "hours": 8.3944, "text": "Probably a really messy workbench right now. Anyways, once again, did quite a bit of working, especially in CAD and 3D printing. Finally, I’ve hit 100% of the program storage space in my Arduino Nano when uploading my code. Need to optimize the code. Had to snap off the screw mounts and the bottom section of the button mount cover for it to fit, fixed it in the later version though. Also, spent 5 full minutes troubleshooting, opening the mainboard out of its case only to find out that nothing was connected (power button, navigation buttons, etc.). Probably, late night fatigue kicking in,,"}, {"post_id": 65290, "ts": "2026-09-10T10:13:56Z", "hours": 9.3603, "text": "Printed out the front panel, got a ton of work to do on the other panels. Thinking of whether or not to add a fuse in series to the direct source connector.. I feel like fitting all of these components into their designated space might be a very tedious task. Its just a pain to measure and ensure everything is in its own designated region and every part seats in properly, and also, found a mini bug, which is to be fixed in the code,,"}, {"post_id": 64192, "ts": "2026-09-08T12:47:58Z", "hours": 7.145, "text": "Printed and assembled the chargers part And also, I’m in the middle of designing the right side panel, gonna take up a ton of time as I’m using hit and trial method"}, {"post_id": 63471, "ts": "2026-09-07T10:49:09Z", "hours": 8.2628, "text": "Completed the modelling part of the inverter case, charger panel and probably also the front panel. Did some minor bug tweaks in the code Also finished cutting the copper sheet for the inverter module"}, {"post_id": 62681, "ts": "2026-09-06T05:13:52Z", "hours": 9.9372, "text": "TERRIBLE NEWS: I lost 3D models of the main front panel, the inverter case AND the chargers panel to a power outage. I know I should’ve saved it but I either complete it and save it or just have them lying in my RAM overnight till it finishes and that power outages are rare for me, but here I am! Completed the bench power supply part, printed the front side in orange and screwed it on the gray bench power supply mount since I’m planning to use orange on gray as opposed to gray on orange. Also added an extra master XT60 connector for direct battery access connections."}, {"post_id": 62043, "ts": "2026-09-05T08:16:17Z", "hours": 5.7331, "text": "Officially over the 100h mark! 🎉 Designed the front plate of the chargers, designed a stencil to drill through the copper sheet that acts as a small ‘heatsoak’, soldered some cables and much more"}, {"post_id": 61095, "ts": "2026-09-03T20:18:00Z", "hours": 9.33, "text": "Did quite a bit of various work today, but the one that made me glad is the successfull printing of the bench power supply part after 5 devastating failed attempts. Designed the case in Fusion 360 Worked on the header connections Worked on the bench power supply part"}, {"post_id": 60231, "ts": "2026-09-02T13:52:59Z", "hours": 8.4903, "text": "Completed the case for the inverter part, switched to digital operation of the fan instead of analog due to never ending problems."}, {"post_id": 58861, "ts": "2026-08-31T13:16:28Z", "hours": 7.7978, "text": "Completed the addition fan and LED interface to the mainboard. I had to add a separate boost converter to the setup. Still the addition of fan causes fluctuation in time to empty readings, need to fix them in code,,"}, {"post_id": 57981, "ts": "2026-08-30T09:57:15Z", "hours": 9.0681, "text": "Finally completed the haptics part, there are still some areas that do not work like intended, but I cannot really do much about it. Designed as well as printed cases for the main board and batteries for enhanced safety. My streak has not extended for today despite 3h of work today.,"}, {"post_id": 56720, "ts": "2026-08-28T16:15:26Z", "hours": 8.8742, "text": "Worked on the haptics for quite a while, still need to add haptic feedback/notification for other messages displayed on the screen, though it is SOO BUGGY! I had to work on it for 3 full days, yet I still feel like the haptic patterns were inconsistent, gotta do more fixing tomorrow, or probably I might focus into something else for a while."}, {"post_id": 54409, "ts": "2026-08-25T12:36:45Z", "hours": 5.1358, "text": "Messed up and messed around using millis(), need more time to debug and fix it (I’m not an expert when it comes to dealing with millis(), open to suggestions), I don’t want to use delay() since it interferes with my mAh measurement in the code. Did a weird contraption of a capacitor, polarity protector diode on a perf board in order to act as a power distribution board since the boost converter had only 1 screw terminal.."}, {"post_id": 53145, "ts": "2026-08-23T16:06:15Z", "hours": 4.215, "text": "I have planned to integrate haptics to the power station too, though traditional ERMs felt too cheap and unreliable, therefore I made something called the “Haptic block”, an LRA (Linear Resonance Actuator)-based haptic actuator, similar to the ones found in flagship smartphones (I’m looking at you, iPhone 6S!). Used a 12V, 6N solenoid along with a MOSFET, resistor and a flyback diode for switching the solenoid with the Arduino board. It works great, started with the coding process, the timings have to be perfect, else, it feels like metal and plastic colliding (though that’s exactly what’s happening XD). With perfect timing though, it enhances the user experience by a lot!"}, {"post_id": 52310, "ts": "2026-08-22T12:55:48Z", "hours": 5.5439, "text": "Took quite a while to try various methods, debug, fix, etc. the MPPT charging. Finally, a transistor pulling the floating 100mV to ground along with an RC filter seems to work, works for now, though not the best way of doing this. (Literally screamed in joy when it finally worked lol :D)"}, {"post_id": 51662, "ts": "2026-08-21T13:48:01Z", "hours": 9.6022, "text": "A week’s worth of devlog, probably I’m gonna switch over to weekly devlogs cuz I’m a bit lazy. Anyways, once again, a ton of changes: First and foremost, replaced the charger modules and the boost converter (Boy was it expensive for me). Added ADS1115 ADC as I needed an extra analog pin for measuring input charging voltage, switched voltage, current and temperature measurement to there as well. Planning on adding 2 more temperature sensors, 1 for the battery and 1 for the charger modules. Working on charging part for now, gonna use MPPT. A mystery addition that I bet nobody can guess (its in the image btw), open to your guesses btw."}, {"post_id": 49024, "ts": "2026-08-17T16:46:02Z", "hours": 4.0364, "text": "A lot of changes and events. Spent almost an hour modifying/testing the charging lightning icon on top of the battery. Fixed the mAh counter Fixed the time to empty counter Edited the power value such that only positive values are shown Killed the boost converter and charger modules, still unsure what caused it but I suspect the boost converter overheating and then finally, a voltage spike killed the charger modules too. Any ideas/opinions are very helpful.."}, {"post_id": 46946, "ts": "2026-08-14T14:53:17Z", "hours": 2.3461, "text": "After 800 lines of code, I finally hit the 2kB RAM ceiling. Did some optimization work on the code. Had to take a backup of the flawless code, try new stuff, in split screen mode between 2 IDE screens"}, {"post_id": 46396, "ts": "2026-08-13T16:02:49Z", "hours": 2.4861, "text": "Completed the chargers part (mainly fixed the power measurement bugs). In addition to that, did the temperature controlled fan part for today, so far works perfectly."}, {"post_id": 45868, "ts": "2026-08-12T16:29:10Z", "hours": 4.4317, "text": "Finally completed the soft-latching power control part in the circuit. 2 Arduino nano(s) were k1lled during the process :*(. Used an N channel MOSFET at first in order to control power going to the Arduino, failed at it, switched to a relay (big mistake), driven by a transistor, finally got out, bought a P channel MOSFET, still driven by an NPN transistor, and in the end, it works flawlessly, gave me immense happiness watching it work flawlessly :D"}, {"post_id": 44056, "ts": "2026-08-09T16:02:34Z", "hours": 3.285, "text": "Did more soldering work, not the prettiest, has a ton of improvements to be made both on the hardware as well as the software side. So far, the charger and the inverter switching part works, need to add a transistor in between the system and the battery in order to turn it off completely when not in use.. Open to suggestions and improvements.."}, {"post_id": 42800, "ts": "2026-08-07T18:17:35Z", "hours": 3.3397, "text": "Burnt some midnight oil to disassemble the breadboard prototype and start with the actual circuitry, soldered a few components so far, yet there’s a lot more to do so, probably gonna take a month to complete -_-."}, {"post_id": 41956, "ts": "2026-08-06T14:15:24Z", "hours": 1.9422, "text": "Worked on the settings screen for a while. Added maximum power limit as well as basic RGB LED colour setting along with EEPROM memory to store the parameters"}, {"post_id": 40710, "ts": "2026-08-04T12:30:27Z", "hours": 1.1986, "text": "Completed drawing the sketch of the portable power station (sorry for the messy work, its the first sketch). Please let me know of any suggestions/improvements.."}, {"post_id": 38209, "ts": "2026-07-31T14:39:56Z", "hours": 1.9614, "text": "Did a lot of tidying and reposition work as well as addition of various controls toggles on and offs."}, {"post_id": 36412, "ts": "2026-07-28T14:57:38Z", "hours": 0.5439, "text": "Added 2 pages: Controls and Info, settings page is still pending.."}, {"post_id": 35897, "ts": "2026-07-27T16:59:50Z", "hours": 0.5722, "text": "Replaced the 20 A BMS with a 40 A one, in order to achieve the full 27 A capability"}, {"post_id": 21533, "ts": "2026-07-03T15:39:47Z", "hours": 0.7169, "text": "Started with the framework of the icons for turning the outputs on or off."}, {"post_id": 20828, "ts": "2026-07-02T15:07:41Z", "hours": 0.3336, "text": "Re-positioned the screen page indicator, fixed a bug that that was present since the start (fun fact: I thought that it was not possible to fix that till yesterday till I remembered “break” statement exists thanks to a dream I had last night using break statement to fix the same)"}, {"post_id": 20105, "ts": "2026-07-01T16:59:16Z", "hours": 0.3414, "text": "Added some adjustments, possibly also a framework of multiple screens."}, {"post_id": 19142, "ts": "2026-06-30T11:57:17Z", "hours": 1.2953, "text": "Completed the temperature reading, temperature warning, as well as temperature controlled fan pwm signal. Bugs: Temperature and PWM value fluctuate greatly when connecting an LED as a test for PWM regulation"}, {"post_id": 18287, "ts": "2026-06-29T12:00:09Z", "hours": 0.9761, "text": "Bare-bone version of the code is ready, works without any major bugs.. Next step: Continue coding of the remaining features and functions (Tested and verified on my trusty breadboard setup)"}]...
|
Title: Sub 100 Wh portable power station by @win7 Title: Sub 100 Wh portable power station by @win7 | Stardance
Devlogs:
Bare-bone version of the code is ready, works without any major bugs.. Next step: Continue coding of the remaining features and functions (Tested and verified on my trusty breadboard setup)
Completed the temperature reading, temperature warning, as well as temperature controlled fan pwm signal. Bugs: Temperature and PWM value fluctuate greatly when connecting an LED as a test for PWM regulation
Added some adjustments, possibly also a framework of multiple screens.
Re-positioned the screen page indicator, fixed a bug that that was present since the start (fun fact: I thought that it was not possible to fix that till yesterday till I remembered “break” statement exists thanks to a dream I had last night using break statement to fix the same)
Started with the framework of the icons for turning the outputs on or off.
Replaced the 20 A BMS with a 40 A one, in order to achieve the full 27 A capability
Added 2 pages: Controls and Info, settings page is still pending..
Did a lot of tidying and reposition work as well as addition of various controls toggles on and offs.
Completed drawing the sketch of the portable power station (sorry for the messy work, its the first sketch). Please let me know of any suggestions/improvements..
Worked on the settings screen for a while. Added maximum power limit as well as basic RGB LED colour setting along with EEPROM memory to store the parameters
Burnt some midnight oil to disassemble the breadboard prototype and start with the actual circuitry, soldered a few components so far, yet there’s a lot more to do so, probably gonna take a month to complete -_-.
Did more soldering work, not the prettiest, has a ton of improvements to be made both on the hardware as well as the software side. So far, the charger and the inverter switching part works, need to add a transistor in between the system and the battery in order to turn it off completely when not in use.. Open to suggestions and improvements..
Finally completed the soft-latching power control part in the circuit. 2 Arduino nano(s) were k1lled during the process :*(. Used an N channel MOSFET at first in order to control power going to the Arduino, failed at it, switched to a relay (big mistake), driven by a transistor, finally got out, bought a P channel MOSFET, still driven by an NPN transistor, and in the end, it works flawlessly, gave me immense happiness watching it work flawlessly :D
Completed the chargers part (mainly fixed the power measurement bugs). In addition to that, did the temperature controlled fan part for today, so far works perfectly.
After 800 lines of code, I finally hit the 2kB RAM ceiling. Did some optimization work on the code. Had to take a backup of the flawless code, try new stuff, in split screen mode between 2 IDE screens
A lot of changes and events. Spent almost an hour modifying/testing the charging lightning icon on top of the battery. Fixed the mAh counter Fixed the time to empty counter Edited the power value such that only positive values are shown Killed the boost converter and charger modules, still unsure what caused it but I suspect the boost converter overheating and then finally, a voltage spike killed the charger modules too. Any ideas/opinions are very helpful..
A week’s worth of devlog, probably I’m gonna switch over to weekly devlogs cuz I’m a bit lazy. Anyways, once again, a ton of changes: First and foremost, replaced the charger modules and the boost converter (Boy was it expensive for me). Added ADS1115 ADC as I needed an extra analog pin for measuring input charging voltage, switched voltage, current and temperature measurement to there as well. Planning on adding 2 more temperature sensors, 1 for the battery and 1 for the charger modules. Working on charging part for now, gonna use MPPT. A mystery addition that I bet nobody can guess (its in the image btw), open to your guesses btw.
Took quite a while to try various methods, debug, fix, etc. the MPPT charging. Finally, a transistor pulling the floating 100mV to ground along with an RC filter seems to work, works for now, though not the best way of doing this. (Literally screamed in joy when it finally worked lol :D)
I have planned to integrate haptics to the power station too, though traditional ERMs felt too cheap and unreliable, therefore I made something called the “Haptic block”, an LRA (Linear Resonance Actuator)-based haptic actuator, similar to the ones found in flagship smartphones (I’m looking at you, iPhone 6S!). Used a 12V, 6N solenoid along with a MOSFET, resistor and a flyback diode for switching the solenoid with the Arduino board. It works great, started with the coding process, the timings have to be perfect, else, it feels like metal and plastic colliding (though that’s exactly what’s happening XD). With perfect timing though, it enhances the user experience by a lot!
Messed up and messed around using millis(), need more time to debug and fix it (I’m not an expert when it comes to dealing with millis(), open to suggestions), I don’t want to use delay() since it interferes with my mAh measurement in the code. Did a weird contraption of a capacitor, polarity protector diode on a perf board in order to act as a power distribution board since the boost converter had only 1 screw terminal..
Worked on the haptics for quite a while, still need to add haptic feedback/notification for other messages displayed on the screen, though it is SOO BUGGY! I had to work on it for 3 full days, yet I still feel like the haptic patterns were inconsistent, gotta do more fixing tomorrow, or probably I might focus into something else for a while.
Finally completed the haptics part, there are still some areas that do not work like intended, but I cannot really do much about it. Designed as well as printed cases for the main board and batteries for enhanced safety. My streak has not extended for today despite 3h of work today.,
Completed the addition fan and LED interface to the mainboard. I had to add a separate boost converter to the setup. Still the addition of fan causes fluctuation in time to empty readings, need to fix them in code,,
Completed the case for the inverter part, switched to digital operation of the fan instead of analog due to never ending problems.
Did quite a bit of various work today, but the one that made me glad is the successfull printing of the bench power supply part after 5 devastating failed attempts. Designed the case in Fusion 360 Worked on the header connections Worked on the bench power supply part
Officially over the 100h mark! 🎉 Designed the front plate of the chargers, designed a stencil to drill through the copper sheet that acts as a small ‘heatsoak’, soldered some cables and much more
TERRIBLE NEWS: I lost 3D models of the main front panel, the inverter case AND the chargers panel to a power outage. I know I should’ve saved it but I either complete it and save it or just have them lying in my RAM overnight till it finishes and that power outages are rare for me, but here I am! Completed the bench power supply part, printed the front side in orange and screwed it on the gray bench power supply mount since I’m planning to use orange on gray as opposed to gray on orange. Also added an extra master XT60 connector for direct battery access connections.
Completed the modelling part of the inverter case, charger panel and probably also the front panel. Did some minor bug tweaks in the code Also finished cutting the copper sheet for the inverter module
Printed and assembled the chargers part And also, I’m in the middle of designing the right side panel, gonna take up a ton of time as I’m using hit and trial method
Printed out the front panel, got a ton of work to do on the other panels. Thinking of whether or not to add a fuse in series to the direct source connector.. I feel like fitting all of these components into their designated space might be a very tedious task. Its just a pain to measure and ensure everything is in its own designated region and every part seats in properly, and also, found a mini bug, which is to be fixed in the code,,
Probably a really messy workbench right now. Anyways, once again, did quite a bit of working, especially in CAD and 3D printing. Finally, I’ve hit 100% of the program storage space in my Arduino Nano when uploading my code. Need to optimize the code. Had to snap off the screw mounts and the bottom section of the button mount cover for it to fit, fixed it in the later version though. Also, spent 5 full minutes troubleshooting, opening the mainboard out of its case only to find out that nothing was connected (power button, navigation buttons, etc.). Probably, late night fatigue kicking in,,
Working on the mainboard mount. The mainboard is planned to be mounted on top of the battery pack. Not sure how I’m gonna figure out how to make mounting holes on the bottom panel. Its 12:20 AM rn, need to go to bed,,,
Birthday devlog today🎉! Did a ton more of CAD work, including modification of slots and sketches, and boy was it painful!. I had to re-draw each sketch on top and repeat this once again since I need one for negative extrusion and one for filling the already existing slots. All caused by my poor judgement of the dimensions of the other parts But here I am! Also, had tweaked the code a little, did some power wire replacements and stuff
Looked through the designs and measurements, edited them when necessary, tested the charging circuit, not sure why but it trips my MacBook’s PD 30 W charger but not my Samsung PD power bank, probably due to inrush currents. After a long conflict, finally printed the right side panel, need to proceed with the left, top, bottom and back panel as well. I don’t know, I’m scared to waste ~100g of filament and ~10h of time over a failed print just because of a dimensional mistake or inaccuracy, I’m just looking through the final model in Fusion 360 countless times,!
Printed the left side panel, tried to print the bottom panel but failed, also the BOM list final is ready!! Well, seems like the assembly process is going to be hard due to a ton of wires and obstacles :( Had to trim the direct source connector panel twice for it to fit in the right side panel Boost converter module is held under really high amount of tension probably due to 10mm bolt and nuts. Made orientation and placement mistakes while installing the chargers panel -_-
In the process of making the soft starter circuit for the XL4016 module, since the inrush current trips some chargers, I’m set on using a 555 timer chip in order to turn on a relay 2s after powering on the relay. Anyways, tested the bare-bones version of the power station at around 100 W and/or 10A of current and it worked beautifully, though I was scared to my core when doing so, not wanting this setup to blow up like last time which killed the boost converter and both the charger modules.
Successfully completed the soft started board in order to prevent the inrush current drawn by the XL4016 module from tripping certain chargers. It felt endless, I had to use 2 NPN transistors in an inverter configuration in order to not use a PNP transistor since I did not have one lol. Also 3D printed and replaced the old battery case for a newer one which has ventilation holes, helping in keeping the battery temperatures low..
Welp, killed another boost converter. This one failed by having its output voltage always equal to the input voltage no matter what, unlike previously where the boost converter failed as a direct short. Other than this, I spent a lot of time troubleshooting the charging MPPT function, which seemed to not have proper limit and tripped whatever charger I had connected it to. Had to change the values quite a bit but nothing helped. In the end I noticed that the initial_in_voltage variable was set to the absolute minimum trigger point whenever the charger was connected, therefore the condition where the (initial_in_voltage - in_voltage variable <= 0.2) inequation is always held true and therefore the Arduino ramped up the PWM no matter what, it took a ton of time to figure out -_- In addition to this, I had also spent a around 2h in testing the power station regarding its thermals and max. power capability..
Had to harvest a boost converter from my old bench power supply, fix it (it was dead shorted due to an internally shorted capacitor) Planning on adding a pre-boost converter for the inverter and the charger functions. They refuse to work below 10.2 V, disregarding 20~30% of battery capacity. Recorded the voltage, current, milliamp hours, power drawn along with time stamps. Gosh, my hands are numb now -_-.
Had to tear the unit down, do plastic welding since the screw mounting slots broke. Probably I would rate this as a 0/10 in the reparability scale by myself -_-. Also, bypassed the 10 V regulator on the charger boost converter module and now it can work from 9V. Planned to add another separate boost converter for the inverter to prevent inverter’s low voltage protection from kicking in. Bypassed the regulator here as well. I feel kinda lazy and tired, probably will log more time from tomorrow,,
After a full 2-week fever, I’m back into business :D. Things aren’t great to start off. To sum it up, the inverter died after I connected a chineese steamer apparently rated for “120 W”, when in reality, it drew around 500 W from my wall. My inverter tried to maintain its voltage and ended up killing its MOSFETS. I really hope the MOSFETS are the only ones damaged.
Switching to daily devlogs from now on.. Worked on the broken inverter. Tried replacing the MOSFETS with a different ones. The original ones were MDP1933, with a drain to source resistance of less than 5 milliohms, while the ones I replaced with were IRFZ44N and featured a drain to source resistance of 15 milliohms. I need to find a stronger MOSFET than the original MDP1933 used in the build and also upgrade my table’s sticker to gray :D
Finally replaced the MDP1933 MOSFETs with beefier IRFB4110 MOSFETs, but boy was it expensive! Whenever we replace blown MOSFETs, its a good practice to replace the entire array even if one MOSFET is blown and the others work perfectly fine since you never know if the voltage spike or whatever calamity had partially destroyed it (it would fail to close properly, dropping a lot of voltage) Atleast the inverter’s been fixed now (or is it..?) and outputs a clean 230 V RMS. Tested with a 20 W lamp and it works well. Need to replace the 35 A automotive fuse on it as well since it was also blown due to the direct short that occurred, I’m using a piece of solder wire as a temporary substitute (not recommended btw) Need to test with bigger loads to ensure that its back at business and nothing else was damaged due to the overload. Also worked on the Instructable for the past two days while waiting to get the MOSFETs....
|
1792702058.5845563
|
1793306858.5845563
|
|
16632
|
Marunnundo by @Adarsh | Stardance
|
Adarsh
|
1
|
4.0
|
16
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-13T17:50:54Z", "hours": 4.0, "multiplier": 4.3, "payout": 16, "blessing": "neutral", "text": "I made a medicine finder for my state", "repo": "https://github.com/stairmoss/Marunnundo", "demo": "https://marunnundo.vercel.app/"}]...
|
[{"post_id": 8182, "ts": "2026 [{"post_id": 8182, "ts": "2026-06-13T17:05:42Z", "hours": 0.8606, "text": "made the portfolio website for this and also in this i have made a video from veo to animate which is showed in side"}, {"post_id": 8079, "ts": "2026-06-13T14:19:56Z", "hours": 0.8553, "text": "i have added a side bar which give the info about the pharmacy which redirects to the google search and changed the green button color to the blue"}, {"post_id": 8008, "ts": "2026-06-13T11:14:13Z", "hours": 0.8369, "text": "i have added dark mode with a lime green cuz blue wasnt perfect and also then also i added these satellite map and also the malayalam language"}, {"post_id": 6926, "ts": "2026-06-11T16:35:11Z", "hours": 0.7675, "text": "i have made the website working and which includes as we can give the current location it gives us near pharmacy and its google profile so that people get direction on map"}, {"post_id": 6853, "ts": "2026-06-11T14:41:47Z", "hours": 0.4817, "text": "worked on the UI"}]...
|
Title: Marunnundo by @Adarsh | Stardance
Devlogs: Title: Marunnundo by @Adarsh | Stardance
Devlogs:
worked on the UI
i have made the website working and which includes as we can give the current location it gives us near pharmacy and its google profile so that people get direction on map
i have added dark mode with a lime green cuz blue wasnt perfect and also then also i added these satellite map and also the malayalam language
i have added a side bar which give the info about the pharmacy which redirects to the google search and changed the green button color to the blue
made the portfolio website for this and also in this i have made a video from veo to animate which is showed in side
Ships:
I made a medicine finder for my state...
|
1792832008.4065495
|
1792918408.4065495
|
|
59594
|
untitled text editor by @alessandro_09 | Stardance
|
alessandro_09
|
0
|
19.28
|
0
|
[]
|
[{"post_id": 81826, "ts": "202 [{"post_id": 81826, "ts": "2026-10-22T17:22:50Z", "hours": 2.1894, "text": "Day 5 - First GUI Rework!! I was a bit busy so I didn’t post a devlog yesterday, but anyway.. I FINALLY DID THE FIRST GUI REWORK!!! It took some time to plan and layout everything and it’s still not perfect. I’ll keep working onto it and make it better. I wanted to make a better one real quick just because I was bored. Useless to say, I’m using Raygui (again) for the GUI! I know that there are probably better libraries but I really love all the raylib ecosystem and I just want to learn even more about it! Thank god the creatore of raygui made a layout software for it, otherwise it would have been a PAIN to make everything look good. Anyway, like I said, everything is still a WORK IN PROGRESS . What’s next? Now, it’s time to work on file loading, saving, editing and creating! After that, I’ll probably work on the GUI again since I want to add styles, some menus and other things. I’m not sure if I’ll add more things after the GUI, I’m not sure cause Stardance is ending soon so I want to ship a working software before it ends so I’ll have to be fast. I’ll keep working on this project anyway cause I’m starting to love it a lot so I want to make it even better! SCREENSHOTSSS!!! YEAH"}, {"post_id": 81305, "ts": "2026-10-20T19:19:00Z", "hours": 4.5569, "text": "Day 4 - WE ARE SO BACK Okay, it’s been like… 27 days… I know yeah, I was quite busy and didn’t pay attention at stardance at all. But I kept working on the project from time to time But now.. I decided to finally lock in! After some time, I finally managed to get it work nicely and has basic functions! MULTI LINE TEXT!!! Hell yeah! I can finally write multi line text without problems! It should work good but could give some errors from time to time. Not sure.. Anyway, I also added a cursor, two debug optiosn to just see the actual cursor position cause on the screen it shows the value + 1 and then a way to see the grid where the text goes! I also added the space when you press Tab (need to adjust it cause I think it’s not the right way to implement it) Another thing I added is the possibility to move the cursor with the arrow keys! And that’s pretty much all for now… yeah. What I’m working on now? Now, I’ll start working on a way to add the scrollbar, maybe a way to select with the mouse where the cursor go and maybe I’ll start adding a way to create, edit and save files… Hope I’ll do it in time. Oh, also I’ll start working on a GUI hopefully. As of now it’s basically ass and it’s only with a light theme. If I manage, I could try to add dark theme. Thank you for everything! Here’s some screenshot of the program!"}, {"post_id": 72886, "ts": "2026-09-23T22:58:08Z", "hours": 4.6356, "text": "Day 3 - It’s almost here.. Okay.. since I went back to school I didn’t have time and even forgot to do devlogs to be fair. Yeah I know.. I’m lazy and pretty forgetful.. BUT WORRY NOT AS STARDANCE HAS BEEN EXTENDED UNTIL 31st OF OCTOBER!! So I have enough time to continue, polish off and ship this project of mine! Anyway, even though I haven’t made any significant devlog, it doesn’t mean I haven’t done anything… Actually, I managed to refactor pretty much the entire code to use OOP and classes! yayyy! Somehow I managed to learn the basics of OOP and as of now it’s actually quite nice and easier to work with, I guess. Other than that.. I’m actually even closer to get it done than ever! As of now, I’m writing a TextBuffer class that will handle all of the attributes and methods regarding the text modification! There’s still a lot to add but eventually, I’m getting there… In the next devlogs I’ll try and explain the structure more and maybe, if I’m not lazy, in about 3-4 devlogs I might actually be able to finish the TextBuffer class and could easily write multi-line text!!! (Devlogs will probably start again from monday cause Im too busy this weekend.) See y’all on the next devlog!"}, {"post_id": 67187, "ts": "2026-09-13T07:48:26Z", "hours": 2.3928, "text": "Day 2 - I honestly don’t know Okay. It’s been 4 days and I haven’t made too much progress since I was busy doing things and I need to go back to school tomorrow so I’m going to be even more busier. Quick recap What did I do? I’m trying to actually make the user be able to write… It kinda worked at the start, but only in one line so know I’m trying to figure out a way to do multiple lines as it should. Rewriting the entire code And I’m also deciding if I should rewrite the entire code to use OOP and check if it’s better but it’s going to be a pain. Even because I never used OOP in C++ to be fair but I’m gonna give it a try anyway. Respectfully? I’m going crazy"}, {"post_id": 64929, "ts": "2026-09-09T17:26:30Z", "hours": 5.5047, "text": "Day 1 - First devlog!! And just like I said before… There we are with my new project!! Yayy! My custom text editor! The project will be a simple text editor coded in C++! Since I still want to work on raylib, it will be based on that, cause I don’t want to learn OpenGL yet and do everything from 0… And even because I truly love the raylib library! Features? So, at this moment I’m still not sure of what I’m gonna add so I’ll start listing the features once I have a decent base of the project since it’s still a mess! If you have any idea or feature that you’d like, please, don’t hesitate to request it! I’m open to feedback of all kind! So just make a comment or shoot a DM! Why a text editor?… Isn’t that quite difficult? Yeah.. It is, as a matter of fact, with this devlog I logged about 5h 27mins cause nothing worked at first and there’s basically nothing. I can just press Enter and Backspace to add and remove lines. That’s all. But being a programmer is a journey that never ends. You never stop learning new things, especially from the start, or at least this is my opinion. I don’t care if the project is messy, bad, unoptimized and probably worse compared to others! My goal is to learn to make better things, and the only way to do it is to create things and push yourself even harder. Being a programmer is something that I truly love and I’m always looking to get better and learn new things, especially as a beginner. Even if it means trying to make hard projects like this one and maybe failing.. But I don’t see it as a failure, I see it as a way to get better and improve myself. And I truly hope that everyone can do the same. Do whatever you want and always believe in yourself. Last thing Alright, enough with the speech and let’s put and end to this devlog. I’ll work on creating the repo later and I’m gonna show a screenshot of the status of the project at this exact moment! Another thing… You may have notice that the project’s name has “untitled”, that’s because I don’t have a name for my software.. So please, if you have any suggestion on the name write them on the comments! Thank you everyone and see y’all on the next devlog!"}]...
|
Title: untitled text editor by @alessandro_09 | St Title: untitled text editor by @alessandro_09 | Stardance
Devlogs:
Day 1 - First devlog!! And just like I said before… There we are with my new project!! Yayy! My custom text editor! The project will be a simple text editor coded in C++! Since I still want to work on raylib, it will be based on that, cause I don’t want to learn OpenGL yet and do everything from 0… And even because I truly love the raylib library! Features? So, at this moment I’m still not sure of what I’m gonna add so I’ll start listing the features once I have a decent base of the project since it’s still a mess! If you have any idea or feature that you’d like, please, don’t hesitate to request it! I’m open to feedback of all kind! So just make a comment or shoot a DM! Why a text editor?… Isn’t that quite difficult? Yeah.. It is, as a matter of fact, with this devlog I logged about 5h 27mins cause nothing worked at first and there’s basically nothing. I can just press Enter and Backspace to add and remove lines. That’s all. But being a programmer is a journey that never ends. You never stop learning new things, especially from the start, or at least this is my opinion. I don’t care if the project is messy, bad, unoptimized and probably worse compared to others! My goal is to learn to make better things, and the only way to do it is to create things and push yourself even harder. Being a programmer is something that I truly love and I’m always looking to get better and learn new things, especially as a beginner. Even if it means trying to make hard projects like this one and maybe failing.. But I don’t see it as a failure, I see it as a way to get better and improve myself. And I truly hope that everyone can do the same. Do whatever you want and always believe in yourself. Last thing Alright, enough with the speech and let’s put and end to this devlog. I’ll work on creating the repo later and I’m gonna show a screenshot of the status of the project at this exact moment! Another thing… You may have notice that the project’s name has “untitled”, that’s because I don’t have a name for my software.. So please, if you have any suggestion on the name write them on the comments! Thank you everyone and see y’all on the next devlog!
Day 2 - I honestly don’t know Okay. It’s been 4 days and I haven’t made too much progress since I was busy doing things and I need to go back to school tomorrow so I’m going to be even more busier. Quick recap What did I do? I’m trying to actually make the user be able to write… It kinda worked at the start, but only in one line so know I’m trying to figure out a way to do multiple lines as it should. Rewriting the entire code And I’m also deciding if I should rewrite the entire code to use OOP and check if it’s better but it’s going to be a pain. Even because I never used OOP in C++ to be fair but I’m gonna give it a try anyway. Respectfully? I’m going crazy
Day 3 - It’s almost here.. Okay.. since I went back to school I didn’t have time and even forgot to do devlogs to be fair. Yeah I know.. I’m lazy and pretty forgetful.. BUT WORRY NOT AS STARDANCE HAS BEEN EXTENDED UNTIL 31st OF OCTOBER!! So I have enough time to continue, polish off and ship this project of mine! Anyway, even though I haven’t made any significant devlog, it doesn’t mean I haven’t done anything… Actually, I managed to refactor pretty much the entire code to use OOP and classes! yayyy! Somehow I managed to learn the basics of OOP and as of now it’s actually quite nice and easier to work with, I guess. Other than that.. I’m actually even closer to get it done than ever! As of now, I’m writing a TextBuffer class that will handle all of the attributes and methods regarding the text modification! There’s still a lot to add but eventually, I’m getting there… In the next devlogs I’ll try and explain the structure more and maybe, if I’m not lazy, in about 3-4 devlogs I might actually be able to finish the TextBuffer class and could easily write multi-line text!!! (Devlogs will probably start again from monday cause Im too busy this weekend.) See y’all on the next devlog!
Day 4 - WE ARE SO BACK Okay, it’s been like… 27 days… I know yeah, I was quite busy and didn’t pay attention at stardance at all. But I kept working on the project from time to time But now.. I decided to finally lock in! After some time, I finally managed to get it work nicely and has basic functions! MULTI LINE TEXT!!! Hell yeah! I can finally write multi line text without problems! It should work good but could give some errors from time to time. Not sure.. Anyway, I also added a cursor, two debug optiosn to just see the actual cursor position cause on the screen it shows the value + 1 and then a way to see the grid where the text goes! I also added the space when you press Tab (need to adjust it cause I think it’s not the right way to implement it) Another thing I added is the possibility to move the cursor with the arrow keys! And that’s pretty much all for now… yeah. What I’m working on now? Now, I’ll start working on a way to add the scrollbar, maybe a way to select with the mouse where the cursor go and maybe I’ll start adding a way to create, edit and save files… Hope I’ll do it in time. Oh, also I’ll start working on a GUI hopefully. As of now it’s basically ass and it’s only with a light theme. If I manage, I could try to add dark theme. Thank you for everything! Here’s some screenshot of the program!
Day 5 - First GUI Rework!! I was a bit busy so I didn’t post a devlog yesterday, but anyway.. I FINALLY DID THE FIRST GUI REWORK!!! It took some time to plan and layout everything and it’s still not perfect. I’ll keep working onto it and make it better. I wanted to make a better one real quick just because I was bored. Useless to say, I’m using Raygui (again) for the GUI! I know that there are probably better libraries but I really love all the raylib ecosystem and I just want to learn even more about it! Thank god the creatore of raygui made a layout software for it, otherwise it would have been a PAIN to make everything look good. Anyway, like I said, everything is still a WORK IN PROGRESS . What’s next? Now, it’s time to work on file loading, saving, editing and creating! After that, I’ll probably work on the GUI again since I want to add styles, some menus and other things. I’m not sure if I’ll add more things after the GUI, I’m not sure cause Stardance is ending soon so I want to ship a working software before it ends so I’ll have to be fast. I’ll keep working on this project anyway cause I’m starting to love it a lot so I want to make it even better! SCREENSHOTSSS!!! YEAH...
|
1792806545.5948596
|
1793411345.5948596
|
|
63742
|
Website by @danb1551 | Stardance
|
danb1551
|
1
|
6.76
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-20T15:47:44Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I remade my personal site. I added links to my profiles on other platforms, remade the design. The most hard part was the radial-gradient (the sun behind my name), because I cannot find any easy tutorial how to write parameters", "repo": "https://github.com/danb1551/danb1551.cz", "demo": "https://danb1551.cz"}]...
|
[{"post_id": 81830, "ts": "202 [{"post_id": 81830, "ts": "2026-10-22T17:38:41Z", "hours": 3.7583, "text": "Completed my website"}, {"post_id": 71273, "ts": "2026-09-20T15:42:15Z", "hours": 1.0625, "text": "Site created"}, {"post_id": 70769, "ts": "2026-09-19T18:46:33Z", "hours": 0.7994, "text": "Using Jinja Templates instead of separated html files"}, {"post_id": 70713, "ts": "2026-09-19T17:14:03Z", "hours": 1.1417, "text": "Recreating page. Also I choosed better template. My current page is not good looking"}]...
|
Title: Website by @danb1551 | Stardance
Devlogs:
Title: Website by @danb1551 | Stardance
Devlogs:
Recreating page. Also I choosed better template. My current page is not good looking
Using Jinja Templates instead of separated html files
Site created
Completed my website
Ships:
I remade my personal site. I added links to my profiles on other platforms, remade the design. The most hard part was the radial-gradient (the sun behind my name), because I cannot find any easy tutorial how to write parameters...
|
1792814062.0123892
|
1792900462.0123892
|
|
54314
|
Aporia by @Eclipse | Stardance
|
Eclipse
|
1
|
32.62
|
528
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-16T16:28:28Z", "hours": 30.0, "multiplier": 14.58, "payout": 528, "blessing": "neutral", "text": "What did I make? I made Aporia: Hear Chaos, a double pendulum simulation that lets you see and hear chaos. Two almost identical pendulums, one tiny difference, and eventually two very different futures… Just physics being dramatic again, lol… What was challenging? Tbh, making the project itself was the biggest challenge for me, as I was a total Cpp beginner before starting it out, perhaps that’s why it took me so long to make this project? But anyways, it started as one small C++ file and somehow became a collection of about 17 files and several opportunities to question my life choices. Even in that ig, the hardest part was the Sonification, as Sound and waves are lwk my weakest parts of physics ;-; And also the fact that I’m not used to making huge projects like these (yes, for me it’s huge 🗿), as the project grew bigger and bigger, I encountered another problem, that is I’d sometimes randomly forget what function did what and why and stuff like that… which led to me finally learning the hard way why Comments are necessary in programming 🫠 I’m just proud that I was able to finish this project at all,, which looked like a mountain by the time I started,, but step by step, I was able to tame it.. :) If you encounter an error like “damaged file” or smth while running Aporia, do read the Readme on it’s github repo where I’ve written down the steps to solve it.. And that’s it I believe? It was fun 🍀 Thank you for reading all the way till here..!! and Have an amazing dayy!!", "repo": "https://github.com/Alchemic-Eclipse/aporia", "demo": "https://github.com/Alchemic-Eclipse/aporia/releases/tag/v1.0"}]...
|
[{"post_id": 81831, "ts": "202 [{"post_id": 81831, "ts": "2026-10-22T17:39:03Z", "hours": 2.6228, "text": "The Ultimate Return After a month, that is one hell of a title. But guess what, I’m back again!! After a long enough break, I think I’m ready to get in the quiet grind mode 🗿 . The biggest complaints with Aporia till now was the fact that it’s only for Mac and not windows…. but that shall change soon, ie. I’m working on a Windows build of Aporia, which is somewhat ready, in a way. So within the next few days, it’ll be available for both operating systems (if ur not sure why I added the cat emoji, trust me, even I’m not sure 😭) . But keeping that aside, I have made some progress today, that is, The simulation is wayy more realistic now. This is because in the shipped version of Aporia, the size of pendulum I used was 80 meters, instead of 80 centimeters,,, which is a little huge, incase you live under a rock 🗿 So after some tries n fixes here and there, I finally got it down to 0.8 meters (aka 80 cm), making the simulation even more realistic than before. I’ve adjusted the time step to be approximately the same as the real life time step of our world (1 sec per sec). Previously it used to be a little faster… making the simulation appear faster than it actually is… even tho time step was still editable, but why not just make the default one sane? . And now, even in Aporia, every 60 sec, a minute passes,,,, but together we can change that!!!! (ifukuk 🥀) . Anyways with that, let’s end today’s devlog, I have many other extra features planned as I make Aporia better everydayy lol!! . And as always Have a beautiful morning..!! 🍀 P.S. Reduce ur device volume before playing the video attached,, thank me later 💔"}, {"post_id": 69207, "ts": "2026-09-16T16:26:47Z", "hours": 1.6406, "text": "Final of the final devlog yep, turns out the build file had quite a few errors and things I should’ve fixed earlier but somehow never crossed my mind,, . along with the fact that I don’t have Apple verification or whatever it’s called 😭 . Anyways, fixed all the issues I could see, and as far as Ik, none of them are left anymore (hopefully)… And now I can finally ship Aporia after some additional testing on other devices . Thank you once againn…!! . (Also as I don’t have any specific attachments, I’ll just add the home-page of aporia as the attachment this time…)"}, {"post_id": 68755, "ts": "2026-09-15T17:55:47Z", "hours": 3.6928, "text": "Final Devlog Functions I added today: Mute / Unmute Navigation Controls menu And finally completed the Readme, that took the most time out of all… . And now I can ship the project 🙃 I’ll keep it short as I’m in a bit of rush right now… but yeah… . It has been an incredible journey..!! Thank you for being a part of it..!! 🦋"}, {"post_id": 68516, "ts": "2026-09-15T07:43:21Z", "hours": 4.8181, "text": "UI Improvements The UI speaks for itself 🗿 (ifykyk, chess)"}, {"post_id": 67522, "ts": "2026-09-13T17:16:45Z", "hours": 1.5411, "text": "Sonification yes….! now you can hear your life chaos through the positions and the angular speeds of the double pendulums… . Specifically, the angular position determines the pitch and the angular speed determines the volume of the sound. . With that, all the core features of Aporia are completely in working condition. That is, now the only things left are: Making the design/typography better. Making the sonification pleasant 🗿 Because, even though you can hear the pendulums diverge through the difference in pitch, the sound it creates is a bit…… uhh…… mathematical? 😭 . Let me clarify, the sounds it generate are derived from a Sine wave… but two simultaneous sine waves can become unpleasant surprisingly quickly, because apparently even mathematics needs a volume limit 🗿🤷🏻♂️ . So it sounds just like two aliens attempting to negotiate a treaty through a malfunctioning fax machine 💔… Which can lead to a headache pretty quickly if not cautious… so that is another thing I need to work on… . And that’s it for today? There’s no attachment as the Mac screen recorder doesn’t support system audio… so it’d be redundant to attach it without audio anyways…. (let me just attach a meme lol) . Anyways.. thank you for reading this through…!! and as always, Good morning 🍀❤️🩹"}, {"post_id": 66438, "ts": "2026-09-12T08:34:57Z", "hours": 4.1358, "text": "Interactive Screen As the title suggests I added: A home page An experiment page Made the exp. page interactive Even though Ik the UI looks awful, but that wasn’t my priority atm, it was to make it interactive, to make sure the changes we do in the values reflect in the simulation…. . Given the fact you know how much of a design freak I am, only I know how much I controlled myself from spending the entire night trying to fix the design… because apparently, projects like these have an instinctive desire to consume their creators…🗿 . But anyways, the next step would be to add proper sonification to Aporia, and then fix the design… . I took me an awful lot to do all that yesterday,,, Have you ever faced the thing, where you project becomes so huge, that you, yourself start getting confused about what things did what and why and stuff like that? 😭 Because now it has started happening to me, so from now on, I’ve decided to add comments to my code, for the sake of my future self 🤷🏻♂️. . And yeah, that’s it for today, I believe? Guten Morgen anyways..!! 🥱👋🏻"}, {"post_id": 65849, "ts": "2026-09-11T08:20:38Z", "hours": 1.9225, "text": "Atomic Difference Ladies and gentlemen, Both the pendulums started out only an “atom” apart. I don’t think I need to provide any more context 🐱 . They should always follow the same path, right? RIGHT? 😶🌫️ Let’s see…. . . . Saw the video? yep, they started only an “atom” apart, yet couldn’t even last a minute together….💔🥀 lol . Shows us how extremely small differences compound overtime in chaotic systems (like weather prediction systems, double pendulums, etc) . But anyways, the changes I made are too visible to list down, so I’ll let it be for now…. 🗿 . Good Evening 🦋🤷🏻♂️"}, {"post_id": 63766, "ts": "2026-09-07T18:43:54Z", "hours": 2.5447, "text": "Small updates Hello there,, quite tired today, so I don’t think I’ll be able to write much in today’s devlog… let me just start by writing down the things I added in Aporia today: Max Energy Error (helpful in comparing different integrators for a fixed amount of time) Pause/ Play / Reset using keys Increment the simulation by 1 step when paused by pressing N I believe I shall complete this project this week if things go according to the plan, even though, I can also do the same in next 3 days, but I genuinely don’t love the idea of me working day in and day out like a caffeinated squirrel whose rent is due the next day… So I’m trying to be a ‘bit’ reasonable here 😭 . And, that’s it for the day, I believe..? Happy Tuesday ig 🤷🏻♂️ & Good Morning 🥀 . P.S. btw sorry if I sound a bit tired, many reasons, but a bad day doesn’t imply a bad life, so I’ll just keep moving 🙃 If you genuinely take time out to read my entire devlogs, then you’re the best lol (for me, at least) ❤️🩹 Thank you ❤️🩹"}, {"post_id": 61662, "ts": "2026-09-04T18:13:00Z", "hours": 1.9792, "text": "Adding RK4 to the simulation And guess what? The Energy error dropped from roughly 10^(-1)% to 10^(-6)% orders of magnitude 💀 (Literally FIVE orders of magnitude lower 🫎) . When I first tried running the program after writing the code for RK4, the best I expected was like 10^(-2) ngl 🥀 . Tho the problem is, I’m running both the versions for an arbitrary amount of time, and then trying to compare the error, which lwk reminds me of atomic bomb vs coughing baby 😭💔 . So my next goal shall be to script a comparer or some sort, which may output things like : maximum energy error final energy error average energy error number of steps simulated time etc Should be fun lol,, . . Also also, I tried one more thing, that is, I changed dt to 1 sec 💀 and guess what was the error % of RK4? 60% 💀 (literally 10^(-6) to 60% 💔) which is basically the numerical equivalent of telling the laws of physics, “I have a better idea” 🗿✌🏻 . But nevertheless, learned a lotttt today..!! Holy productivity~~~ 🦋🥹 . But anyways, that’s it for today, Good Morning~!! P.S. I think this project is lwk going in the right direction, the experimentation, the research, the learnings, new future features, all these things mean way more to me than making a random copy-paste project saying “I made a double pendulum go brrr” 😭 lol"}, {"post_id": 61016, "ts": "2026-09-03T18:31:08Z", "hours": 2.3808, "text": "Rendering the Euler Hypothesis of Aporia yeah, fancy title innit? 🥀 (sorry 😭💔) . but as the title suggests, I finally was able to render a basic simulation of Aporia with a single, double pendulum, that renders using the Euler Integration method (for now). . This is the first major step of the simulator… which shall become clear as we move towards the future with the speed of 1 sec per second (🗿) . Alr, keeping that aside, if you pay some attention to the stuff printing out in the console (in the video), that,,, is the energy difference oscillating (and the Energy Error), which ideally should be 0 (as energy is conserved in a closed system). . Which shows us that Euler integrator doesn’t just inject extra energy into the system, but also lets some of it bleed out (which shall become important later on as we compare different integrators). . And, that’s it for the day ig? . Thank you for reading it through..!! Have a nice dayyy…!! 🌙"}, {"post_id": 60466, "ts": "2026-09-02T20:04:18Z", "hours": 2.7894, "text": "Completed CLI / Math Engine Ladies and gentlemen, guess who finally completed the complete transfer of code structures and added Energy engine in Aporia? 😭 . ngl, the experience was lwk tedious, rewriting old, long equations in new format just so they could cooperate with me as I make Aporia bigger instead of playing like a 2nd grader trying to solve a 12th grade question, and acting like everything is fine…🤷🏻♂️ . I also divided the program in multiple files for the same reason, I really don’t love the idea of one source file having 800+ lines of code and some prayers where I’m trying to fix a bug on line 265, which turns out to be blank 🗿 . With that, tomorrow I shall be starting the work on GUI and Rendering… so that it finally looks like a simulation… ❤️🩹 . btw, Good Morning~~ 🥱"}, {"post_id": 58864, "ts": "2026-08-31T13:19:12Z", "hours": 2.6917, "text": "Restarting Aporia After abandoning the project due to some technical glitches on Stardance’s website, guess who’s back once the glitch got fixed? 🗿✌🏻 . This devlog shall mark the beginning of a new start. . I had already completed the Physics Engine long ago, ie. From today I’ll be focusing on finally completing the project along with GUI and Rendering… . P.S. Ik this one sounds a bit rushed, it’s because I’m running low on time and have many deadlines this month, so can’t spend too much time writing devlogs or else I’m cooked 🥹🐈 (tho I’ll try my best to properly write the ones that come after this fs)"}]...
|
Title: Aporia by @Eclipse | Stardance
Devlogs:
Re Title: Aporia by @Eclipse | Stardance
Devlogs:
Restarting Aporia After abandoning the project due to some technical glitches on Stardance’s website, guess who’s back once the glitch got fixed? 🗿✌🏻 . This devlog shall mark the beginning of a new start. . I had already completed the Physics Engine long ago, ie. From today I’ll be focusing on finally completing the project along with GUI and Rendering… . P.S. Ik this one sounds a bit rushed, it’s because I’m running low on time and have many deadlines this month, so can’t spend too much time writing devlogs or else I’m cooked 🥹🐈 (tho I’ll try my best to properly write the ones that come after this fs)
Completed CLI / Math Engine Ladies and gentlemen, guess who finally completed the complete transfer of code structures and added Energy engine in Aporia? 😭 . ngl, the experience was lwk tedious, rewriting old, long equations in new format just so they could cooperate with me as I make Aporia bigger instead of playing like a 2nd grader trying to solve a 12th grade question, and acting like everything is fine…🤷🏻♂️ . I also divided the program in multiple files for the same reason, I really don’t love the idea of one source file having 800+ lines of code and some prayers where I’m trying to fix a bug on line 265, which turns out to be blank 🗿 . With that, tomorrow I shall be starting the work on GUI and Rendering… so that it finally looks like a simulation… ❤️🩹 . btw, Good Morning~~ 🥱
Rendering the Euler Hypothesis of Aporia yeah, fancy title innit? 🥀 (sorry 😭💔) . but as the title suggests, I finally was able to render a basic simulation of Aporia with a single, double pendulum, that renders using the Euler Integration method (for now). . This is the first major step of the simulator… which shall become clear as we move towards the future with the speed of 1 sec per second (🗿) . Alr, keeping that aside, if you pay some attention to the stuff printing out in the console (in the video), that,,, is the energy difference oscillating (and the Energy Error), which ideally should be 0 (as energy is conserved in a closed system). . Which shows us that Euler integrator doesn’t just inject extra energy into the system, but also lets some of it bleed out (which shall become important later on as we compare different integrators). . And, that’s it for the day ig? . Thank you for reading it through..!! Have a nice dayyy…!! 🌙
Adding RK4 to the simulation And guess what? The Energy error dropped from roughly 10^(-1)% to 10^(-6)% orders of magnitude 💀 (Literally FIVE orders of magnitude lower 🫎) . When I first tried running the program after writing the code for RK4, the best I expected was like 10^(-2) ngl 🥀 . Tho the problem is, I’m running both the versions for an arbitrary amount of time, and then trying to compare the error, which lwk reminds me of atomic bomb vs coughing baby 😭💔 . So my next goal shall be to script a comparer or some sort, which may output things like : maximum energy error final energy error average energy error number of steps simulated time etc Should be fun lol,, . . Also also, I tried one more thing, that is, I changed dt to 1 sec 💀 and guess what was the error % of RK4? 60% 💀 (literally 10^(-6) to 60% 💔) which is basically the numerical equivalent of telling the laws of physics, “I have a better idea” 🗿✌🏻 . But nevertheless, learned a lotttt today..!! Holy productivity~~~ 🦋🥹 . But anyways, that’s it for today, Good Morning~!! P.S. I think this project is lwk going in the right direction, the experimentation, the research, the learnings, new future features, all these things mean way more to me than making a random copy-paste project saying “I made a double pendulum go brrr” 😭 lol
Small updates Hello there,, quite tired today, so I don’t think I’ll be able to write much in today’s devlog… let me just start by writing down the things I added in Aporia today: Max Energy Error (helpful in comparing different integrators for a fixed amount of time) Pause/ Play / Reset using keys Increment the simulation by 1 step when paused by pressing N I believe I shall complete this project this week if things go according to the plan, even though, I can also do the same in next 3 days, but I genuinely don’t love the idea of me working day in and day out like a caffeinated squirrel whose rent is due the next day… So I’m trying to be a ‘bit’ reasonable here 😭 . And, that’s it for the day, I believe..? Happy Tuesday ig 🤷🏻♂️ & Good Morning 🥀 . P.S. btw sorry if I sound a bit tired, many reasons, but a bad day doesn’t imply a bad life, so I’ll just keep moving 🙃 If you genuinely take time out to read my entire devlogs, then you’re the best lol (for me, at least) ❤️🩹 Thank you ❤️🩹
Atomic Difference Ladies and gentlemen, Both the pendulums started out only an “atom” apart. I don’t think I need to provide any more context 🐱 . They should always follow the same path, right? RIGHT? 😶🌫️ Let’s see…. . . . Saw the video? yep, they started only an “atom” apart, yet couldn’t even last a minute together….💔🥀 lol . Shows us how extremely small differences compound overtime in chaotic systems (like weather prediction systems, double pendulums, etc) . But anyways, the changes I made are too visible to list down, so I’ll let it be for now…. 🗿 . Good Evening 🦋🤷🏻♂️
Interactive Screen As the title suggests I added: A home page An experiment page Made the exp. page interactive Even though Ik the UI looks awful, but that wasn’t my priority atm, it was to make it interactive, to make sure the changes we do in the values reflect in the simulation…. . Given the fact you know how much of a design freak I am, only I know how much I controlled myself from spending the entire night trying to fix the design… because apparently, projects like these have an instinctive desire to consume their creators…🗿 . But anyways, the next step would be to add proper sonification to Aporia, and then fix the design… . I took me an awful lot to do all that yesterday,,, Have you ever faced the thing, where you project becomes so huge, that you, yourself start getting confused about what things did what and why and stuff like that? 😭 Because now it has started happening to me, so from now on, I’ve decided to add comments to my code, for the sake of my future self 🤷🏻♂️. . And yeah, that’s it for today, I believe? Guten Morgen anyways..!! 🥱👋🏻
Sonification yes….! now you can hear your life chaos through the positions and the angular speeds of the double pendulums… . Specifically, the angular position determines the pitch and the angular speed determines the volume of the sound. . With that, all the core features of Aporia are completely in working condition. That is, now the only things left are: Making the design/typography better. Making the sonification pleasant 🗿 Because, even though you can hear the pendulums diverge through the difference in pitch, the sound it creates is a bit…… uhh…… mathematical? 😭 . Let me clarify, the sounds it generate are derived from a Sine wave… but two simultaneous sine waves can become unpleasant surprisingly quickly, because apparently even mathematics needs a volume limit 🗿🤷🏻♂️ . So it sounds just like two aliens attempting to negotiate a treaty through a malfunctioning fax machine 💔… Which can lead to a headache pretty quickly if not cautious… so that is another thing I need to work on… . And that’s it for today? There’s no attachment as the Mac screen recorder doesn’t support system audio… so it’d be redundant to attach it without audio anyways…. (let me just attach a meme lol) . Anyways.. thank you for reading this through…!! and as always, Good morning 🍀❤️🩹
UI Improvements The UI speaks for itself 🗿 (ifykyk, chess)
Final Devlog Functions I added today: Mute / Unmute Navigation Controls menu And finally completed the Readme, that took the most time out of all… . And now I can ship the project 🙃 I’ll keep it short as I’m in a bit of rush right now… but yeah… . It has been an incredible journey..!! Thank you for being a part of it..!! 🦋
Final of the final devlog yep, turns out the build file had quite a few errors and things I should’ve fixed earlier but somehow never crossed my mind,, . along with the fact that I don’t have Apple verification or whatever it’s called 😭 . Anyways, fixed all the issues I could see, and as far as Ik, none of them are left anymore (hopefully)… And now I can finally ship Aporia after some additional testing on other devices . Thank you once againn…!! . (Also as I don’t have any specific attachments, I’ll just add the home-page of aporia as the attachment this time…)
The Ultimate Return After a month, that is one hell of a title. But guess what, I’m back again!! After a long enough break, I think I’m ready to get in the quiet grind mode 🗿 . The biggest complaints with Aporia till now was the fact that it’s only for Mac and not windows…. but that shall change soon, ie. I’m working on a Windows build of Aporia, which is somewhat ready, in a way. So within the next few days, it’ll be available for both operating systems (if ur not sure why I added the cat emoji, trust me, even I’m not sure 😭) . But keeping that aside, I have made some progress today, that is, The simulation is wayy more realistic now. This is because in the shipped version of Aporia, the size of pendulum I used was 80 meters, instead of 80 centimeters,,, which is a little huge, incase you live under a rock 🗿 So after some tries n fixes here and there, I finally got it down to 0.8 meters (aka 80 cm), making the simulation even more realistic than before. I’ve adjusted the time step to be approximately the same as the real life time step of our world (1 sec per sec). Previously it used to be a little faster… making the simulation appear faster than it actually is… even tho time step was still editable, but why not just make the default one sane? . And now, even in Aporia, every 60 sec, a minute passes,,,, but together we can change that!!!! (ifukuk 🥀) . Anyways with that, let’s end today’s devlog, I have many other extra features planned as I make Aporia better everydayy lol!! . And as always Have a beautiful morning..!! 🍀 P.S. Reduce ur device volume before playing the video attached,, thank me later 💔
Ships:
What did I make? I made Aporia: Hear Chaos, a double pendulum simulation that lets you see and hear chaos. Two almost identical pendulums, one tiny difference, and eventually two very different futures… Just physics being dramatic again, lol… What was challenging? Tbh, making the project itself was the biggest challenge for me, as I was a total Cpp beginner before starting it out, perhaps that’s why it took me so long to make this project? But anyways, it started as one small C++ file and somehow became a collection of about 17 files and several opportunities to question my life choices. Even in that ig, the hardest part was the Sonification, as Sound and waves are lwk my weakest parts of physics ;-; And also the fact that I’m not used to making huge projects like these (yes, for me it’s huge 🗿), as the project grew bigger and bigger, I encountered another problem, that is I’d sometimes randomly forget what function did what and why and stuff like that… which led to me finally learning the hard way why Comments are necessary in programming 🫠 I’m just proud that I was able to finish this project at all,, which looked like a mountain by the time I started,, but step by step, I was able to tame it.. :) If you encounter an error like “damaged file” or smth while running Aporia, do read the Readme on it’s github repo where I’ve written down the steps to solve it.. And that’s it I believe? It was fun 🍀 Thank you for reading all the way till here..!! and Have an amazing dayy!!...
|
1792856973.0243506
|
1792943373.0243506
|
|
54660
|
Thumba to Space by @MIREYA | Stardance
|
MIREYA
|
1
|
6.38
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-17T15:05:53Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built an interactive website that tell the story of Thumba - India’s first launching site. FEATURES: Timeline Images Brief description of Dr.Vikram Sarabhai and APJ Abdul Kalam I have built with Python, GitHub, and Streamlit.", "repo": "https://github.com/Mireya-examclarity/thumba-to-space-3", "demo": "https://mireya-examclarity.github.io/thumba-to-space-3/"}]...
|
[{"post_id": 81832, "ts": "202 [{"post_id": 81832, "ts": "2026-10-22T17:40:32Z", "hours": 0.9911, "text": "Guys today I worked on thumbha to space too(My first project 😁). I fixed my Flask app (imports were missing and health route was not working) and redesigned my whole Thumba to Space website - I removed the Kuttan section because it looked too basic. I added a full canvas starfield background, made a real rocket launch animation where the rocket actually flies up when you click LAUNCH icon, added a cute floating satellite sticker.Tomorrow I will work more on making my website more interesting with more features like adding ISRO launch history, sound effects for launch, a map for Thumba location and maybe a small orbit animation, and fixing the mobile view. I am also thinking about adding historical images as thats the whole point . Anyway, let’s see tomorrow(! !)"}, {"post_id": 70777, "ts": "2026-09-19T19:01:58Z", "hours": 0.3928, "text": "Thumba to Space traces India’s space journey from a tiny fishing village in Thumba, Kerala (1963), where rockets were launched from a church, to Chandrayaan-3 on the Moon. Features interactive ISRO timeline, live ISS tracker, Gaganyaan countdown, and space quiz. Built from Kilimanoor, the birthplace of Raja Ravi Varma - from art to space!"}, {"post_id": 56763, "ts": "2026-08-28T17:31:42Z", "hours": 2.4667, "text": "Thumba to Space - final deploy grind! My localhost was working but Streamlit Cloud was giving white screen. Fixed it - it was my CSS and unsplash image links getting blocked. Added M83 Outro embedded YouTube player with fallback audio for college wifi, plus 5 quiz questions, ISS tracker map, and Kuttan mascot animations. Site is now live at thumba-to-space streamlit link. Testing NASA APOD and Mars rover images now - some images still get blocked on college wifi so switching to backup unsplash links. It took some time to change the code from online to offline and the website kept showing old code. It was some hassle but in the end I was able to finish it off.It still need some work to do but for today I think this came out pretty well.I’ve added groot,images,and videos. Hope for more tomorrow!!!."}, {"post_id": 55636, "ts": "2026-08-27T16:25:21Z", "hours": 1.4333, "text": "Working on Thumba to Space update - 2hr grind Finally fixed the deployment bug. My Streamlit link kept giving white screen, found it was theme CSS issue. Changed to deep space black (#0a0a23) and added st.snow() for star effect. Looks so much better now! Tested new link: https://mtvjugafrkxgj8n6qcbwxe.streamlit.app/ - it’s live! This project is special for me - I’m from Kilimanoor, near Thumba where India launched first rocket on bicycle in 1963. Want to make space history fun for Kerala students. Fixed GitHub repo too - thumba-to-space-3 now public. Next: adding ISRO launch timeline."}, {"post_id": 55165, "ts": "2026-08-26T17:16:43Z", "hours": 1.3478, "text": "Just shipped Thumba to Space 🚀! Made an interactive Streamlit website celebrating India’s space journey that started at Thumba, Thiruvananthapuram in 1963 — where rockets were carried on bicycles!.This one took some time to delploy but at last the codes came out right and I was able to make it . So guys lets keep on going(! !). I added a special section for my hometown Kilimanoor (home of Raja Ravi Varma and mine too) and made a Rocket Builder! Built from scratch in VS Code, deployed on Streamlit Cloud. Live: https://thumba-to-space-2-8e7ghf76xrswbcdm6hapva.streamlit.app 1h 20m of coding today!!!!Next: adding more ISRO missions…"}]...
|
Title: Thumba to Space by @MIREYA | Stardance
Dev Title: Thumba to Space by @MIREYA | Stardance
Devlogs:
Just shipped Thumba to Space 🚀! Made an interactive Streamlit website celebrating India’s space journey that started at Thumba, Thiruvananthapuram in 1963 — where rockets were carried on bicycles!.This one took some time to delploy but at last the codes came out right and I was able to make it . So guys lets keep on going(! !). I added a special section for my hometown Kilimanoor (home of Raja Ravi Varma and mine too) and made a Rocket Builder! Built from scratch in VS Code, deployed on Streamlit Cloud. Live: https://thumba-to-space-2-8e7ghf76xrswbcdm6hapva.streamlit.app 1h 20m of coding today!!!!Next: adding more ISRO missions…
Working on Thumba to Space update - 2hr grind Finally fixed the deployment bug. My Streamlit link kept giving white screen, found it was theme CSS issue. Changed to deep space black (#0a0a23) and added st.snow() for star effect. Looks so much better now! Tested new link: https://mtvjugafrkxgj8n6qcbwxe.streamlit.app/ - it’s live! This project is special for me - I’m from Kilimanoor, near Thumba where India launched first rocket on bicycle in 1963. Want to make space history fun for Kerala students. Fixed GitHub repo too - thumba-to-space-3 now public. Next: adding ISRO launch timeline.
Thumba to Space - final deploy grind! My localhost was working but Streamlit Cloud was giving white screen. Fixed it - it was my CSS and unsplash image links getting blocked. Added M83 Outro embedded YouTube player with fallback audio for college wifi, plus 5 quiz questions, ISS tracker map, and Kuttan mascot animations. Site is now live at thumba-to-space streamlit link. Testing NASA APOD and Mars rover images now - some images still get blocked on college wifi so switching to backup unsplash links. It took some time to change the code from online to offline and the website kept showing old code. It was some hassle but in the end I was able to finish it off.It still need some work to do but for today I think this came out pretty well.I’ve added groot,images,and videos. Hope for more tomorrow!!!.
Thumba to Space traces India’s space journey from a tiny fishing village in Thumba, Kerala (1963), where rockets were launched from a church, to Chandrayaan-3 on the Moon. Features interactive ISRO timeline, live ISS tracker, Gaganyaan countdown, and space quiz. Built from Kilimanoor, the birthplace of Raja Ravi Varma - from art to space!
Guys today I worked on thumbha to space too(My first project 😁). I fixed my Flask app (imports were missing and health route was not working) and redesigned my whole Thumba to Space website - I removed the Kuttan section because it looked too basic. I added a full canvas starfield background, made a real rocket launch animation where the rocket actually flies up when you click LAUNCH icon, added a cute floating satellite sticker.Tomorrow I will work more on making my website more interesting with more features like adding ISRO launch history, sound effects for launch, a map for Thumba location and maybe a small orbit animation, and fixing the mobile view. I am also thinking about adding historical images as thats the whole point . Anyway, let’s see tomorrow(! !)
Ships:
I built an interactive website that tell the story of Thumba - India’s first launching site. FEATURES: Timeline Images Brief description of Dr.Vikram Sarabhai and APJ Abdul Kalam I have built with Python, GitHub, and Streamlit....
|
1792857007.1448004
|
1792943407.1448004
|
|
32034
|
Nova Mirror by @JTech3D | Stardance
|
JTech3D
|
0
|
24.61
|
0
|
[]
|
[{"post_id": 81833, "ts": "202 [{"post_id": 81833, "ts": "2026-10-22T17:42:22Z", "hours": 0.3725, "text": "Uhhm I accidentally got lucky… I won the RNG but I live in Germany sooo… …if my project gets accepted I’ll give it to someone random who responds to this Devlog. Does anyone want it?"}, {"post_id": 79317, "ts": "2026-10-13T14:37:10Z", "hours": 2.0289, "text": "Finally!! Project funding here I come! This Repo is perfected now. https://github.com/JTech3D/Nova-Mirror/tree/main Hopefully it gets accepted… but why wouldn’t it, right?"}, {"post_id": 79128, "ts": "2026-10-12T19:22:08Z", "hours": 6.0731, "text": "Ohhh my god I’m finally done… This CAD file of my Nova-Mirror took waaayy to long. But I need it for funding. With that done I actually just have to finish the BOM and add everything to the README. AND THEN I CAN SUBMIT FUNDING! I’m happy, hopefully it doesn’t get rejected…"}, {"post_id": 76352, "ts": "2026-10-03T08:57:46Z", "hours": 2.2489, "text": "Finished Spotify-Widget! Now I just need to make it beautiful…"}, {"post_id": 73907, "ts": "2026-09-26T09:25:53Z", "hours": 12.9136, "text": "Progresssss chat! I just finished the configurator-website and the display-website for my Nova-Mirror! The display-website is what is shown on the monitor (via kiosk-mode on the pi) and the configurator-website lets you configure the widgets (which widgets, where & additional information like a city for the weather-widget). Now I just need a project funding and I can build this thing! (I still have to add things to the websites though)"}, {"post_id": 24919, "ts": "2026-07-08T19:50:09Z", "hours": 0.9736, "text": "Hey there! This is the concept for my Smart Magic Mirror. (I’m still looking for a better name for this, maybe “Nova Mirror” or “Echo Glass” – any ideas?) It works just like a normal wall mirror does, but it has a build in screen at the top which projects information right into the glass. This information consists of different widgets that can be selected and positioned individually. My ideas for such widgets are: Weather Apple calender and reminders Apple fitness and health Spotify Smart-Home (e. g. smart-thermometers) (If you have Ideas for other widgets, feel free to comment those!) Ok, so those widgets show why it’s called the “Magic Mirror”, but why “Smart”? Because I want to turn this mirror into a whole Smart-Home-Assistant powered by AI. The mirror has a built in microphone. This way you can tell your mirror to Turn on your lights or change colors Close your blinds or change their position Play a song via Spotify … and much more. You can also ask your mirror for additional information from your widgets like When will the sun go down today? What should I wear today? What song is currently playing? How many calories are still missing for my goal today? or for information of the internet. The mirror basically acts like an Amazon Alexa or a Google Nest. With the help of AI your mirror can also answer your complex questions, but you don’t have to link that if you don’t want to or don’t need it. If you want your mirror to talk to you and answer your questions via TTS instead of showing them on the glass you can also add a USB-speaker to it. The mirror falls asleep after a set amount of time and automatically awakens when you step in front of it, due to the invisible radar sensor behind the glass. You can still ask it questions or give comands when its asleep. On the top are 5 buttons. One of them shuts the mirror down completely (if you want to sleep next to it like me) and starts it again, one is for muting the microphone and the other three can be bound to anything you want. Of course you can move those buttons to the side of the mirror (recommended if you are unter 1,60m), change the amount or remove them entirely (e. g. if you want to shut down or start the mirror with your phone) After building and preparing the micro-SD-card for the Pi you will be able to configure everything through a web interface. The first version will definitely require some 3D-printed parts. This is still only a concept but I hope will be able to start develloping soon. If you have any ideas for improvement please comment them. Okay, this poorly written devlog finally comes to an end, I’m sorry for every english-speaker who broke 3 bones while reading this."}]...
|
Title: Nova Mirror by @JTech3D | Stardance
Devlog Title: Nova Mirror by @JTech3D | Stardance
Devlogs:
Hey there! This is the concept for my Smart Magic Mirror. (I’m still looking for a better name for this, maybe “Nova Mirror” or “Echo Glass” – any ideas?) It works just like a normal wall mirror does, but it has a build in screen at the top which projects information right into the glass. This information consists of different widgets that can be selected and positioned individually. My ideas for such widgets are: Weather Apple calender and reminders Apple fitness and health Spotify Smart-Home (e. g. smart-thermometers) (If you have Ideas for other widgets, feel free to comment those!) Ok, so those widgets show why it’s called the “Magic Mirror”, but why “Smart”? Because I want to turn this mirror into a whole Smart-Home-Assistant powered by AI. The mirror has a built in microphone. This way you can tell your mirror to Turn on your lights or change colors Close your blinds or change their position Play a song via Spotify … and much more. You can also ask your mirror for additional information from your widgets like When will the sun go down today? What should I wear today? What song is currently playing? How many calories are still missing for my goal today? or for information of the internet. The mirror basically acts like an Amazon Alexa or a Google Nest. With the help of AI your mirror can also answer your complex questions, but you don’t have to link that if you don’t want to or don’t need it. If you want your mirror to talk to you and answer your questions via TTS instead of showing them on the glass you can also add a USB-speaker to it. The mirror falls asleep after a set amount of time and automatically awakens when you step in front of it, due to the invisible radar sensor behind the glass. You can still ask it questions or give comands when its asleep. On the top are 5 buttons. One of them shuts the mirror down completely (if you want to sleep next to it like me) and starts it again, one is for muting the microphone and the other three can be bound to anything you want. Of course you can move those buttons to the side of the mirror (recommended if you are unter 1,60m), change the amount or remove them entirely (e. g. if you want to shut down or start the mirror with your phone) After building and preparing the micro-SD-card for the Pi you will be able to configure everything through a web interface. The first version will definitely require some 3D-printed parts. This is still only a concept but I hope will be able to start develloping soon. If you have any ideas for improvement please comment them. Okay, this poorly written devlog finally comes to an end, I’m sorry for every english-speaker who broke 3 bones while reading this.
Progresssss chat! I just finished the configurator-website and the display-website for my Nova-Mirror! The display-website is what is shown on the monitor (via kiosk-mode on the pi) and the configurator-website lets you configure the widgets (which widgets, where & additional information like a city for the weather-widget). Now I just need a project funding and I can build this thing! (I still have to add things to the websites though)
Finished Spotify-Widget! Now I just need to make it beautiful…
Ohhh my god I’m finally done… This CAD file of my Nova-Mirror took waaayy to long. But I need it for funding. With that done I actually just have to finish the BOM and add everything to the README. AND THEN I CAN SUBMIT FUNDING! I’m happy, hopefully it doesn’t get rejected…
Finally!! Project funding here I come! This Repo is perfected now. https://github.com/JTech3D/Nova-Mirror/tree/main Hopefully it gets accepted… but why wouldn’t it, right?
Uhhm I accidentally got lucky… I won the RNG but I live in Germany sooo… …if my project gets accepted I’ll give it to someone random who responds to this Devlog. Does anyone want it?...
|
1792781438.1316843
|
1793386238.1316843
|
|
70952
|
Bobby by @Rohan | Stardance
|
Rohan
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-22T17:54:17Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a basic slack bot for the slack bot mission, It is hosted on the hackclub nest!!! It has 3 commands: /bobby-ping : Checks if the bot is running and it’s latency /bobby-fact-of-the-day : Gives a random fact that refreshes daily!!! /bobby-catpics : Gives a random cat pic yayaya I used a bit of AI, mainly for debugging and some functions in JS was a bit of a learning curve since I barely use it and last time I used it was months ago however it went pretty smoothly overall : DDD", "repo": "https://github.com/Rohan317685/Bobby", "demo": "https://app.slack.com/client/E09V59WQY1E/C0P5NE354"}]...
|
[{"post_id": 81835, "ts": "202 [{"post_id": 81835, "ts": "2026-10-22T17:51:17Z", "hours": 0.7519, "text": "I just finished the codebase, I have to host it on nest and it should be ready to ship. I have also made the Readme and used a couple API’s to fetch a random cat pic and a random fact that refreshes everyday I found them through https://free-apis.github.io/ and I don’t code much in JS so this was a bit of a learning experience for me lol"}]...
|
Title: Bobby by @Rohan | Stardance
Devlogs:
I jus Title: Bobby by @Rohan | Stardance
Devlogs:
I just finished the codebase, I have to host it on nest and it should be ready to ship. I have also made the Readme and used a couple API’s to fetch a random cat pic and a random fact that refreshes everyday I found them through https://free-apis.github.io/ and I don’t code much in JS so this was a bit of a learning experience for me lol
Ships:
I made a basic slack bot for the slack bot mission, It is hosted on the hackclub nest!!! It has 3 commands: /bobby-ping : Checks if the bot is running and it’s latency /bobby-fact-of-the-day : Gives a random fact that refreshes daily!!! /bobby-catpics : Gives a random cat pic yayaya I used a bit of AI, mainly for debugging and some functions in JS was a bit of a learning curve since I barely use it and last time I used it was months ago however it went pretty smoothly overall : DDD...
|
1792694824.5053275
|
1792781224.5053275
|
|
39296
|
MNT ~ Minimal New Tab by @wtfisquantum | Stardance
|
wtfisquantum
|
4
|
91.28
|
706
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-09T16:55:29Z", "hours": 58.0, "multiplier": 15.51, "payout": 589, "blessing": "neutral", "text": "I built MNT ~ Minimal New Tab , a customizable browser dashboard that has grown into something much bigger than a simple new tab page. It brings together multi-search engine support, todos, website shortcuts, technology news, a dynamic Leaflet map background, laptop battery information, RGB mode, custom backgrounds and now a built-in music player, all in one place. The biggest challenge was getting all these features to work together without making the interface feel cluttered or slow. I spent a lot of time building reusable components, handling local storage, integrating APIs, fixing map issues and refining the overall UI. One of my favourite parts was designing the music player with a glassmorphism-inspired interface, rotating album artwork and animated equalizer. I also converted the project into a standalone PWA, so you can install it and use it more like a lightweight desktop app instead of opening it through the browser every time. I’m most proud of how customizable the whole experience has become. You can personalize your background, enable RGB effects, organize your tasks and shortcuts, check your battery status and listen to music without constantly switching between different applications. I’ve put a lot of time into this project, and seeing all these separate ideas finally come together feels genuinely rewarding. To try it out: open the website and explore the dashboard. Switch between search engines, add some todos and shortcuts, experiment with RGB mode, upload your own background and try the built-in music player. You can also install it as a PWA for a more app-like experience. Your saved preferences and customizations are stored locally in your browser. I’d genuinely appreciate it if you gave the project a try and left an honest rating and some feedback! ❤️ Last time, I received some decent feedback, but I’m hoping this version reaches a few more people. If you enjoy using it, a good rating and a follow would mean a lot and help me figure out what to improve next. I’ve still got plenty of ideas for future updates, but for now, I’m really happy with how MNT has turned out. Thanks for checking it out! :)", "repo": "https://github.com/wtfisquantum/minimal-new-tab", "demo": "https://minimal-new-tab.vercel.app/"}, {"ship_num": 2, "ts": "2026-08-28T04:14:07Z", "hours": 6.0, "multiplier": 11.58, "payout": 69, "blessing": "neutral", "text": "I built MNT ~ Minimal New Tab , a clean and customizable browser new tab experience designed to turn the default blank page into a useful everyday dashboard. It combines multi-search engine support, a Todo Manager, customizable website shortcuts, a latest news feed and a dynamic location-aware Leaflet background into a single minimal interface. The biggest challenge was bringing all these independent features together without making the interface feel cluttered. I spent a lot of time working on reusable components, persistent local storage, search engine switching, API integrations and the dynamic map background while keeping the overall design minimal and responsive. I’m most proud of how the project evolved from a simple new tab concept into something that I can actually see myself using every day. The dashboard remembers your tasks, shortcuts and preferences locally, lets you quickly switch between search engines, keeps you updated with recent technology news and adds a dynamic map background based on your location. To test it, simply open the website and start using it as a new tab. Try switching between the different search engines, add a few todos and shortcuts, check out the latest news and reload the page to see how your saved data persists. The map background will also adapt to your approximate location. I’ve really enjoyed building this one and there are still a bunch of ideas I want to experiment with in future updates. If you get a chance to try it out, I’d really appreciate some feedback and a good rating! ❤️ last time i got some decent feedback on my project, but it was still pretty limited, so i’m hoping this one reaches a few more people. i genuinely enjoy building projects that are actually useful in everyday workflows, and i hope that comes across in this one. if you like the project, consider following it and leaving a rating. every bit of feedback helps me figure out what to improve next. thank you! :)", "repo": "https://github.com/wtfisquantum/minimal-new-tab", "demo": "https://minimal-new-tab.vercel.app/"}, {"ship_num": 3, "ts": "2026-08-02T14:23:18Z", "hours": 4.0, "multiplier": 11.23, "payout": 48, "blessing": "neutral", "text": "I built Minimal New Tab , a modern and customizable browser start page that combines productivity, quick search and useful everyday tools into a single clean dashboard. Instead of opening a blank new tab, users get a personalized workspace where they can search the web using multiple search engines, manage todos, save their favorite websites as quick-access shortcuts, read the latest news and enjoy a dynamic location-aware background powered by Leaflet. One of the biggest challenges was keeping all of these independent features connected while maintaining a clean and consistent user experience. I spent a lot of time designing reusable components, refining the UI, handling local persistence for todos and shortcuts, integrating multiple APIs and making sure everything worked smoothly together. Another fun challenge was rendering a dynamic Leaflet map in the background based on the user’s current IP location without taking away from the minimal design. I’m most proud of how the project evolved from a simple browser homepage into something that feels genuinely useful every day. It isn’t just another new tab page—it becomes a small personal dashboard that remembers your preferences, helps you stay organized and keeps commonly used information just one click away. To test the project, simply install or open it as your new tab page. Try searching with different search engines, create a few todos, add and edit homepage shortcuts, browse the latest news and explore how the background automatically adapts using your current location. Everything is stored locally, so your tasks and shortcuts will still be there the next time you open your browser. I hope you enjoy using it as much as I enjoyed building it. Feedback and suggestions are always welcome, and I already have plenty of ideas planned for future updates!", "repo": "https://github.com/wtfisquantum/minimal-new-tab", "demo": "https://minimal-new-tab.vercel.app/"}, {"ship_num": 4, "ts": "2026-07-27T18:44:14Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Wrapped up a number of remaining fixes and gave the overall interface another round of polishing Refined the search bar with a cleaner layout and improved interactions to make searching feel more natural Finalized the cyclic search engine toggle and ensured switching between providers works reliably Improved parts of the backend logic and cleaned up the codebase to make future development easier Continued implementing a few upcoming features, including the taskbar workflow and additional new tab interactions Expanded the search functionality inside the new tab experience and polished the overall user flow Switched the project typography to Rubik and made several CSS refinements for a cleaner, more modern appearance Updated and reorganized the project README with setup instructions, features and screenshots Finished another complete testing pass, fixed a handful of minor bugs and cleaned up leftover code Finally reached a point where the project is ready to publish 🚀 really happy with how this version turned out. i’ve still got a bunch of ideas i want to experiment with, but for now it’s time to ship and start collecting feedback before working on the next set of features :)", "repo": "https://github.com/wtfisquantum/minimal-new-tab", "demo": "https://minimal-new-tab.vercel.app/"}]...
|
[{"post_id": 81838, "ts": "202 [{"post_id": 81838, "ts": "2026-10-22T17:59:11Z", "hours": 9.1289, "text": "working on it will write after finishing"}, {"post_id": 80198, "ts": "2026-10-16T17:40:17Z", "hours": 11.1494, "text": "will edit it"}, {"post_id": 78114, "ts": "2026-10-09T16:27:01Z", "hours": 20.5025, "text": "finally got the built-in music player working, and honestly, this might be my favourite addition to MNT so far. the idea is simple: you shouldn’t need to open spotify or another music app just to find and play the music you want. search for a track directly inside your dashboard and enjoy your music without leaving your workspace spent quite a bit of time researching music APIs, figuring out the integration and building the entire player experience from scratch. getting the search, track information and playback flow to work together properly took more effort than i initially expected designed a dedicated music player interface that fits naturally into the existing MNT aesthetic instead of looking like an external widget pasted into the dashboard implemented a glassmorphism-inspired UI with translucent surfaces, subtle blur effects and layered elements to give the player a more polished, modern appearance added a rotating circular album-art design that gives the player that classic spinning CD vibe while music is playing also implemented an animated audio equalizer to make the interface feel more alive and provide visual feedback during playback refined the component layout, spacing, typography and animations to make everything feel cohesive with the rest of the dashboard fixed a few remaining issues across the PWA, polished some existing interactions and made sure the new music player fits properly into the standalone app experience did another round of testing and cleanup to make the overall application feel more complete, with search, productivity tools, customization, RGB mode and music all accessible from one place ngl, this took a lot longer than i expected, and i’ve now spent around 20 hours on this project, but trust me, this feature was worth it :’) MNT started as a minimal new tab page, but it’s slowly turning into my own little personal workspace. no need to keep opening different apps for every little thing when i can bring the useful stuff together in one place. finally wrapped up this update, fixed the remaining bugs and got everything ready in the standalone PWA. hope you enjoy using it as much as i enjoyed building it! if you get a chance to try it out, i’d really appreciate a rating and some feedback. ❤️"}, {"post_id": 73713, "ts": "2026-09-25T19:28:42Z", "hours": 11.1631, "text": "continued working on the customization system and finished the custom background flow properly, so users can now add their own images and use them directly as the dashboard background also made sure the custom background works nicely with the existing rgb mode , so the background can still have the rgb lighting effects on top of it without breaking the overall look after getting the customization side working, i converted the whole project into a proper standalone PWA this means MNT can now be installed and used more like an actual lightweight desktop app instead of having to keep opening it through the browser every time added the necessary PWA setup and made sure the application can run independently while still keeping all the existing local data, preferences and customizations intact honestly this makes the whole idea of MNT make much more sense to me now. instead of opening a browser just to start doing everything, you can just open MNT directly and have your search, todos, shortcuts, news, map, battery info and custom dashboard all sitting there in one lightweight app i’m still working on a few more ideas to push this further. one of the things i’m experimenting with is adding a proper music player directly into MNT so you can play your own songs from the same dashboard instead of having to open another service every time basically trying to slowly turn this from a new tab page into a small personal desktop workspace :D there’s still a lot more i want to add, but the standalone PWA setup feels like a pretty big step for the project. more features coming soon :)"}, {"post_id": 68606, "ts": "2026-09-15T11:55:52Z", "hours": 6.6394, "text": "Started working on a new godmode feature for the dashboard, basically taking the customization side of the new tab a step further and giving users much more control over how everything looks also went back to the existing rgb mode and improved it with smoother transitions and better color handling so it feels more like an actual ambient rgb setup instead of just a simple color effect the biggest thing i worked on this time was a custom background uploader . built the uploader from scratch so users can pick their own image and use it directly as the new tab background instead of relying on a server or uploading the image somewhere externally, the selected image is converted to base64 and stored locally in the browser , which means the background stays available even after closing and reopening the new tab spent quite a bit of time making the loading process efficient so larger background images don’t make the whole dashboard feel slow or unusable. the image is loaded directly from local storage and rendered back into the background whenever the page starts added the required state handling around uploading, replacing and restoring the custom background so switching between the default background and a personal image doesn’t break the rest of the dashboard honestly this was probably the most fun feature i’ve built for MNT so far. seeing the entire dashboard transform just by dropping in a custom image makes it feel much more like an actual personal workspace rather than just another new tab page :) i’m also working on another part of the godmode system where users will be able to customize individual cards, backgrounds and other visual parts of the dashboard through a dedicated sidebar the sidebar customization system is still in progress, but the basic structure is already being worked on and i’m hoping to make the whole dashboard feel almost completely customizable in the next few updates there’s still a lot more to build around this, but honestly MNT is starting to become way more interesting than what i originally planned it to be :D"}, {"post_id": 66383, "ts": "2026-09-12T05:59:42Z", "hours": 1.3456, "text": "added a fun little rgb mode to the new tab because why not :) the idea is to make the dashboard blend in with your rgb setup, so if you have rgb lights on your keyboard, mouse or pc, you can match the new tab’s colors with them and get that full rgb setup vibe kept it as a purely visual feature with some subtle color effects so it still feels like the same minimal dashboard underneath honestly added this mostly because it looked cool and i wanted to have a little fun with the project :D"}, {"post_id": 66088, "ts": "2026-09-11T17:44:11Z", "hours": 17.8528, "text": "went a little overboard with this one and spent quite a lot of time improving the project after getting feedback that it could use a bit more depth and functionality expanded the news section so it no longer shows just a single article. added a proper news carousel with navigation controls, indicators and multiple stories that can be browsed directly from the dashboard getting the carousel to fit naturally into the existing minimal design was actually more annoying than expected. had to rework the layout, add the bottom indicators and build separate previous/next controls without making the section feel too heavy added subtle fade-in animations while switching between news stories so the content transitions feel smoother instead of changing instantly replaced the old Leaflet background tile layer after the previous provider’s API access stopped working due to an expired key. switched the project over to a different tile source and reconfigured the map so the location-aware background keeps working spent some time testing the map again after the tile provider change and made sure the new layer still works properly with the existing location detection and background setup added one of the more personal features to the dashboard too: a small laptop battery status panel in the top section that shows the current battery percentage, charging state and other available battery information the idea was pretty simple because my laptop’s battery is absolutely cooked and drains way too quickly 😭 so now i can just glance at the new tab and immediately see how much battery i have left and whether it’s charging also polished a bunch of smaller UI details around these features, cleaned up some component logic and made sure the new additions still fit the original minimal design instead of turning the dashboard into a completely overloaded interface spent the remaining time testing the updated dashboard and fixing small rendering and animation issues that came up while putting everything together there’s actually another feature i’m working on right now which i’m pretty excited about, but i’ll save that one for the next devlog. hopefully i can get it finished soon and add it to the project properly :) and yes, the ultimate goal is still getting that macbook somehow, so apparently even my new tab page is now part of the grind :)"}, {"post_id": 56385, "ts": "2026-08-28T04:12:55Z", "hours": 5.9658, "text": "Continued polishing the dashboard and worked on making the dynamic background experience more reliable Improved the Leaflet map integration and fixed the issue where map state and configuration were not being persisted properly between sessions Added local persistence for the relevant map and user preferences so the new tab experience can retain its previous state instead of resetting everything on every reload Refined several existing components and cleaned up their internal logic to make them easier to reuse across the dashboard Improved the styling of the search section, shortcuts and other dashboard elements with better spacing, typography and alignment Made a few adjustments to the background map so it stays visually subtle while still providing the location-aware effect behind the interface Fixed some small state and rendering issues that appeared when switching between different sections and reopening the new tab Added a few minor interaction improvements across the dashboard and cleaned up some leftover CSS and component logic Spent some time testing the complete flow with fresh sessions and existing local data to make sure the application behaves consistently in both cases Overall, focused this session on making the existing features feel more polished, persistent and reliable rather than adding another major feature"}, {"post_id": 39496, "ts": "2026-08-02T14:16:38Z", "hours": 4.2475, "text": "Expanded the project by introducing a personal productivity layer , making it more than just an IP intelligence dashboard. Started building features that users can actually interact with every day instead of only performing IP lookups. Implemented a complete Todo Manager where users can: Create new tasks Edit existing tasks Mark tasks as completed with visual feedback Delete completed or unnecessary tasks Persist everything locally so tasks remain available even after refreshing or reopening the application Designed the todo interface to blend naturally with the rest of the application, keeping the same cards, spacing, typography and interaction patterns so it feels like a native part of the dashboard rather than an additional widget. Added a customizable Homescreen Shortcuts section that allows users to save frequently visited websites directly inside the dashboard. The feature supports: Adding custom shortcuts Editing existing shortcuts Removing shortcuts Local persistence using browser storage so every user’s personalized workspace is restored automatically Refined the component architecture behind these new modules to keep the codebase modular and easier to extend with additional dashboard widgets in future updates. Improved the visual consistency across the entire application by revisiting spacing, typography, borders, hover effects and component alignment. Focused on making every section feel like part of one cohesive experience instead of multiple independent pages. Reworked the dashboard background by replacing static visuals with a dynamic location-aware experience . The application now automatically fetches the user’s current public IP, determines the approximate location and renders the corresponding Leaflet map directly in the background. Fine-tuned the map presentation so it acts as a subtle visual element rather than distracting from the main interface, creating a cleaner and more immersive experience while still giving each user a unique background based on their own location. Performed another round of UI polish, bug fixes and responsiveness improvements to ensure the newly added dashboard features work smoothly across different screen sizes and integrate seamlessly with the existing lookup workflow. This update mainly focused on transforming the project from a simple networking utility into a more customizable and interactive dashboard while preserving the educational and technical foundation of the original idea."}, {"post_id": 35949, "ts": "2026-07-27T18:40:34Z", "hours": 0.7731, "text": "Wrapped up a number of remaining fixes and gave the overall interface another round of polishing Refined the search bar with a cleaner layout and improved interactions to make searching feel more natural Finalized the cyclic search engine toggle and ensured switching between providers works reliably Improved parts of the backend logic and cleaned up the codebase to make future development easier Continued implementing a few upcoming features, including the taskbar workflow and additional new tab interactions Expanded the search functionality inside the new tab experience and polished the overall user flow Switched the project typography to Rubik and made several CSS refinements for a cleaner, more modern appearance Updated and reorganized the project README with setup instructions, features and screenshots Finished another complete testing pass, fixed a handful of minor bugs and cleaned up leftover code Finally reached a point where the project is ready to publish 🚀 really happy with how this version turned out. i’ve still got a bunch of ideas i want to experiment with, but for now it’s time to ship and start collecting feedback before working on the next set of features :)"}, {"post_id": 35767, "ts": "2026-07-27T12:28:19Z", "hours": 0.7803, "text": "Integrated the news fetching system using the Inshorts API to retrieve the latest technology news dynamically Connected the frontend with the API layer and implemented the initial data fetching workflow for displaying fresh headlines Refined the overall interface with several UI improvements, tweaking the layout and styling to give it a cleaner, more “new tab” inspired appearance Polished the CSS across multiple sections to improve spacing, visual consistency and readability Added persistent search engine preferences using localStorage , allowing the selected search provider to remain the default even after reopening the application Improved state initialization so previously saved preferences are restored automatically on page load Performed another round of cleanup and minor refinements while preparing the remaining features for the next development session"}, {"post_id": 35348, "ts": "2026-07-26T17:53:46Z", "hours": 0.5492, "text": "Continued building the projects reusable UI foundation by implementing a few additional shared components and polishing their styling for a more consistent look and feel Built the primary search section that will act as the core interaction point of the application Implemented support for multiple search engines, including: Google DuckDuckGo Bing Added the corresponding search URL generation logic for each provider so queries are routed correctly Developed a cyclic search engine selector that loops through the available providers with each click instead of relying on a traditional dropdown Refined the component state management to ensure the active search engine updates seamlessly throughout the interface Started integrating the external API that powers the application’s backend workflow and completed the initial implementation along with part of the request handling logic Cleaned up the surrounding code while preparing the remaining API integration for the next development session"}, {"post_id": 35277, "ts": "2026-07-26T16:11:44Z", "hours": 0.6456, "text": "started setting up the project from scratch today using the latest version of vite and cleaned out all the default boilerplate to keep the codebase lightweight. configured tailwindcss and organized the initial project structure so everything is ready for building the actual application. after getting the foundation in place, i started designing and implementing a few reusable ui components that will be used throughout the project. built things like a digital clock component, pill badges, section headers and a few other shared elements while focusing on keeping the design clean, consistent and easy to extend. this should make building the rest of the interface much faster as the project grows."}]...
|
Title: MNT ~ Minimal New Tab by @wtfisquantum | St Title: MNT ~ Minimal New Tab by @wtfisquantum | Stardance
Devlogs:
started setting up the project from scratch today using the latest version of vite and cleaned out all the default boilerplate to keep the codebase lightweight. configured tailwindcss and organized the initial project structure so everything is ready for building the actual application. after getting the foundation in place, i started designing and implementing a few reusable ui components that will be used throughout the project. built things like a digital clock component, pill badges, section headers and a few other shared elements while focusing on keeping the design clean, consistent and easy to extend. this should make building the rest of the interface much faster as the project grows.
Continued building the projects reusable UI foundation by implementing a few additional shared components and polishing their styling for a more consistent look and feel Built the primary search section that will act as the core interaction point of the application Implemented support for multiple search engines, including: Google DuckDuckGo Bing Added the corresponding search URL generation logic for each provider so queries are routed correctly Developed a cyclic search engine selector that loops through the available providers with each click instead of relying on a traditional dropdown Refined the component state management to ensure the active search engine updates seamlessly throughout the interface Started integrating the external API that powers the application’s backend workflow and completed the initial implementation along with part of the request handling logic Cleaned up the surrounding code while preparing the remaining API integration for the next development session
Integrated the news fetching system using the Inshorts API to retrieve the latest technology news dynamically Connected the frontend with the API layer and implemented the initial data fetching workflow for displaying fresh headlines Refined the overall interface with several UI improvements, tweaking the layout and styling to give it a cleaner, more “new tab” inspired appearance Polished the CSS across multiple sections to improve spacing, visual consistency and readability Added persistent search engine preferences using localStorage , allowing the selected search provider to remain the default even after reopening the application Improved state initialization so previously saved preferences are restored automatically on page load Performed another round of cleanup and minor refinements while preparing the remaining features for the next development session
Wrapped up a number of remaining fixes and gave the overall interface another round of polishing Refined the search bar with a cleaner layout and improved interactions to make searching feel more natural Finalized the cyclic search engine toggle and ensured switching between providers works reliably Improved parts of the backend logic and cleaned up the codebase to make future development easier Continued implementing a few upcoming features, including the taskbar workflow and additional new tab interactions Expanded the search functionality inside the new tab experience and polished the overall user flow Switched the project typography to Rubik and made several CSS refinements for a cleaner, more modern appearance Updated and reorganized the project README with setup instructions, features and screenshots Finished another complete testing pass, fixed a handful of minor bugs and cleaned up leftover code Finally reached a point where the project is ready to publish 🚀 really happy with how this version turned out. i’ve still got a bunch of ideas i want to experiment with, but for now it’s time to ship and start collecting feedback before working on the next set of features :)
Expanded the project by introducing a personal productivity layer , making it more than just an IP intelligence dashboard. Started building features that users can actually interact with every day instead of only performing IP lookups. Implemented a complete Todo Manager where users can: Create new tasks Edit existing tasks Mark tasks as completed with visual feedback Delete completed or unnecessary tasks Persist everything locally so tasks remain available even after refreshing or reopening the application Designed the todo interface to blend naturally with the rest of the application, keeping the same cards, spacing, typography and interaction patterns so it feels like a native part of the dashboard rather than an additional widget. Added a customizable Homescreen Shortcuts section that allows users to save frequently visited websites directly inside the dashboard. The feature supports: Adding custom shortcuts Editing existing shortcuts Removing shortcuts Local persistence using browser storage so every user’s personalized workspace is restored automatically Refined the component architecture behind these new modules to keep the codebase modular and easier to extend with additional dashboard widgets in future updates. Improved the visual consistency across the entire application by revisiting spacing, typography, borders, hover effects and component alignment. Focused on making every section feel like part of one cohesive experience instead of multiple independent pages. Reworked the dashboard background by replacing static visuals with a dynamic location-aware experience . The application now automatically fetches the user’s current public IP, determines the approximate location and renders the corresponding Leaflet map directly in the background. Fine-tuned the map presentation so it acts as a subtle visual element rather than distracting from the main interface, creating a cleaner and more immersive experience while still giving each user a unique background based on their own location. Performed another round of UI polish, bug fixes and responsiveness improvements to ensure the newly added dashboard features work smoothly across different screen sizes and integrate seamlessly with the existing lookup workflow. This update mainly focused on transforming the project from a simple networking utility into a more customizable and interactive dashboard while preserving the educational and technical foundation of the original idea.
Continued polishing the dashboard and worked on making the dynamic background experience more reliable Improved the Leaflet map integration and fixed the issue where map state and configuration were not being persisted properly between sessions Added local persistence for the relevant map and user preferences so the new tab experience can retain its previous state instead of resetting everything on every reload Refined several existing components and cleaned up their internal logic to make them easier to reuse across the dashboard Improved the styling of the search section, shortcuts and other dashboard elements with better spacing, typography and alignment Made a few adjustments to the background map so it stays visually subtle while still providing the location-aware effect behind the interface Fixed some small state and rendering issues that appeared when switching between different sections and reopening the new tab Added a few minor interaction improvements across the dashboard and cleaned up some leftover CSS and component logic Spent some time testing the complete flow with fresh sessions and existing local data to make sure the application behaves consistently in both cases Overall, focused this session on making the existing features feel more polished, persistent and reliable rather than adding another major feature
went a little overboard with this one and spent quite a lot of time improving the project after getting feedback that it could use a bit more depth and functionality expanded the news section so it no longer shows just a single article. added a proper news carousel with navigation controls, indicators and multiple stories that can be browsed directly from the dashboard getting the carousel to fit naturally into the existing minimal design was actually more annoying than expected. had to rework the layout, add the bottom indicators and build separate previous/next controls without making the section feel too heavy added subtle fade-in animations while switching between news stories so the content transitions feel smoother instead of changing instantly replaced the old Leaflet background tile layer after the previous provider’s API access stopped working due to an expired key. switched the project over to a different tile source and reconfigured the map so the location-aware background keeps working spent some time testing the map again after the tile provider change and made sure the new layer still works properly with the existing location detection and background setup added one of the more personal features to the dashboard too: a small laptop battery status panel in the top section that shows the current battery percentage, charging state and other available battery information the idea was pretty simple because my laptop’s battery is absolutely cooked and drains way too quickly 😭 so now i can just glance at the new tab and immediately see how much battery i have left and whether it’s charging also polished a bunch of smaller UI details around these features, cleaned up some component logic and made sure the new additions still fit the original minimal design instead of turning the dashboard into a completely overloaded interface spent the remaining time testing the updated dashboard and fixing small rendering and animation issues that came up while putting everything together there’s actually another feature i’m working on right now which i’m pretty excited about, but i’ll save that one for the next devlog. hopefully i can get it finished soon and add it to the project properly :) and yes, the ultimate goal is still getting that macbook somehow, so apparently even my new tab page is now part of the grind :)
added a fun little rgb mode to the new tab because why not :) the idea is to make the dashboard blend in with your rgb setup, so if you have rgb lights on your keyboard, mouse or pc, you can match the new tab’s colors with them and get that full rgb setup vibe kept it as a purely visual feature with some subtle color effects so it still feels like the same minimal dashboard underneath honestly added this mostly because it looked cool and i wanted to have a little fun with the project :D
Started working on a new godmode feature for the dashboard, basically taking the customization side of the new tab a step further and giving users much more control over how everything looks also went back to the existing rgb mode and improved it with smoother transitions and better color handling so it feels more like an actual ambient rgb setup instead of just a simple color effect the biggest thing i worked on this time was a custom background uploader . built the uploader from scratch so users can pick their own image and use it directly as the new tab background instead of relying on a server or uploading the image somewhere externally, the selected image is converted to base64 and stored locally in the browser , which means the background stays available even after closing and reopening the new tab spent quite a bit of time making the loading process efficient so larger background images don’t make the whole dashboard feel slow or unusable. the image is loaded directly from local storage and rendered back into the background whenever the page starts added the required state handling around uploading, replacing and restoring the custom background so switching between the default background and a personal image doesn’t break the rest of the dashboard honestly this was probably the most fun feature i’ve built for MNT so far. seeing the entire dashboard transform just by dropping in a custom image makes it feel much more like an actual personal workspace rather than just another new tab page :) i’m also working on another part of the godmode system where users will be able to customize individual cards, backgrounds and other visual parts of the dashboard through a dedicated sidebar the sidebar customization system is still in progress, but the basic structure is already being worked on and i’m hoping to make the whole dashboard feel almost completely customizable in the next few updates there’s still a lot more to build around this, but honestly MNT is starting to become way more interesting than what i originally planned it to be :D
continued working on the customization system and finished the custom background flow properly, so users can now add their own images and use them directly as the dashboard background also made sure the custom background works nicely with the existing rgb mode , so the background can still have the rgb lighting effects on top of it without breaking the overall look after getting the customization side working, i converted the whole project into a proper standalone PWA this means MNT can now be installed and used more like an actual lightweight desktop app instead of having to keep opening it through the browser every time added the necessary PWA setup and made sure the application can run independently while still keeping all the existing local data, preferences and customizations intact honestly this makes the whole idea of MNT make much more sense to me now. instead of opening a browser just to start doing everything, you can just open MNT directly and have your search, todos, shortcuts, news, map, battery info and custom dashboard all sitting there in one lightweight app i’m still working on a few more ideas to push this further. one of the things i’m experimenting with is adding a proper music player directly into MNT so you can play your own songs from the same dashboard instead of having to open another service every time basically trying to slowly turn this from a new tab page into a small personal desktop workspace :D there’s still a lot more i want to add, but the standalone PWA setup feels like a pretty big step for the project. more features coming soon :)
finally got the built-in music player working, and honestly, this might be my favourite addition to MNT so far. the idea is simple: you shouldn’t need to open spotify or another music app just to find and play the music you want. search for a track directly inside your dashboard and enjoy your music without leaving your workspace spent quite a bit of time researching music APIs, figuring out the integration and building the entire player experience from scratch. getting the search, track information and playback flow to work together properly took more effort than i initially expected designed a dedicated music player interface that fits naturally into the existing MNT aesthetic instead of looking like an external widget pasted into the dashboard implemented a glassmorphism-inspired UI with translucent surfaces, subtle blur effects and layered elements to give the player a more polished, modern appearance added a rotating circular album-art design that gives the player that classic spinning CD vibe while music is playing also implemented an animated audio equalizer to make the interface feel more alive and provide visual feedback during playback refined the component layout, spacing, typography and animations to make everything feel cohesive with the rest of the dashboard fixed a few remaining issues across the PWA, polished some existing interactions and made sure the new music player fits properly into the standalone app experience did another round of testing and cleanup to make the overall application feel more complete, with search, productivity tools, customization, RGB mode and music all accessible from one place ngl, this took a lot longer than i expected, and i’ve now spent around 20 hours on this project, but trust me, this feature was worth it :’) MNT started as a minimal new tab page, but it’s slowly turning into my own little personal workspace. no need to keep opening different apps for every little thing when i can bring the useful stuff together in one place. finally wrapped up this update, fixed the remaining bugs and got everything ready in the standalone PWA. hope you enjoy using it as much as i enjoyed building it! if you get a chance to try it out, i’d really appreciate a rating and some feedback. ❤️
will edit it
working on it will write after finishing
Ships:
Wrapped up a number of remaining fixes and gave the overall interface another round of polishing Refined the search bar with a cleaner layout and improved interactions to make searching feel more natural Finalized the cyclic search engine toggle and ensured switching between providers works reliably Improved parts of the backend logic and cleaned up the codebase to make future development easier Continued implementing a few upcoming features, including the taskbar workflow and additional new tab interactions Expanded the search functionality inside the new tab experience and polished the overall user flow Switched the project typography to Rubik and made several CSS refinements for a cleaner, more modern appearance Updated and reorganized the project README with setup instructions, features and screenshots Finished another complete testing pass, fixed a handful of minor bugs and cleaned up leftover code Finally reached a point where the project is ready to publish 🚀 really happy with how this version turned out. i’ve still got a bunch of ideas i want to experiment with, but for now it’s time to ship and start collecting feedback before working on the next set of features :)
I built Minimal New Tab , a modern and customizable browser start page that combines productivity, quick search and useful everyday tools into a single clean dashboard. Instead of opening a blank new tab, users get a personalized workspace where they can search the web using multiple search engines, manage todos, save their favorite websites as quick-access shortcuts, read the latest news and enjoy a dynamic location-aware background powered by Leaflet. One of the biggest challenges was keeping all of these independent features connected while maintaining a clean and consistent user experience. I spent a lot of time designing reusable components, refining the UI, handling local persistence for todos and shortcuts, integrating multiple APIs and making sure everything worked smoothly together. Another fun challenge was rendering a dynamic Leaflet map in the background based on the user’s current IP location without taking away from the minimal design. I’m most proud of how the project evolved from a simple browser homepage into something that feels genuinely useful every day. It isn’t just another new tab page—it becomes a small personal dashboard that remembers your preferences, helps you stay organized and keeps commonly used information just one click away. To test the project, simply install or open it as your new tab page. Try searching with different search engines, create a few todos, add and edit homepage shortcuts, browse the latest news and explore how the background automatically adapts using your current location. Everything is stored locally, so your tasks and shortcuts will still be there the next time you open your browser. I hope you enjoy using it as much as I enjoyed building it. Feedback and suggestions are always welcome, and I already have plenty of ideas planned for future updates!
I built MNT ~ Minimal New Tab , a clean and customizable browser new tab experience designed to turn the default blank page into a useful everyday dashboard. It combines multi-search engine support, a Todo Manager, customizable website shortcuts, a latest news feed and a dynamic location-aware Leaflet background into a single minimal interface. The biggest challenge was bringing all these independent features together without making the interface feel cluttered. I spent a lot of time working on reusable components, persistent local storage, search engine switching, API integrations and the dynamic map background while keeping the overall design minimal and responsive. I’m most proud of how the project evolved from a simple new tab concept into something that I can actually see myself using every day. The dashboard remembers your tasks, shortcuts and preferences locally, lets you quickly switch between search engines, keeps you updated with recent technology news and adds a dynamic map background based on your location. To test it, simply open the website and start using it as a new tab. Try switching between the different search engines, add a few todos and shortcuts, check out the latest news and reload the page to see how your saved data persists. The map background will also adapt to your approximate location. I’ve really enjoyed building this one and there are still a bunch of ideas I want to experiment with in future updates. If you get a chance to try it out, I’d really appreciate some feedback and a good rating! ❤️ last time i got some decent feedback on my project, but it was still pretty limited, so i’m hoping this one reaches a few more people. i genuinely enjoy building projects that are actually useful in everyday workflows, and i hope that comes across in this one. if you like the project, consider following it and leaving a rating. every bit of feedback helps me figure out what to improve next. thank you! :)
I built MNT ~ Minimal New Tab , a customizable browser dashboard that has grown into something much bigger than a simple new tab page. It brings together multi-search engine support, todos, website shortcuts, technology news, a dynamic Leaflet map background, laptop battery information, RGB mode, custom backgrounds and now a built-in music player, all in one place. The biggest challenge was getting all these features to work together without making the interface feel cluttered or slow. I spent a lot of time building reusable components, handling local storage, integrating APIs, fixing map issues and refining the overall UI. One of my favourite parts was designing the music player with a glassmorphism-inspired interface, rotating album artwork and animated equalizer. I also converted the project into a standalone PWA, so you can install it and use it more like a lightweight desktop app instead of opening it through the browser every time. I’m most proud of how customizable the whole experience has become. You can personalize your background, enable RGB effects, organize your tasks and shortcuts, check your battery status and listen to music without constantly switching between different applications. I’ve put a lot of time into this project, and seeing all these separate ideas finally come together feels genuinely rewarding. To try it out: open the website and explore the dashboard. Switch between search engines, add some todos and shortcuts, experiment with RGB mode, upload your own background and try the built-in music player. You can also install it as a PWA for a more app-like experience. Your saved preferences and customizations are stored locally in your browser. I’d genuinely appreciate it if you gave the project a try and left an honest rating and some feedback! ❤️ Last time, I received some decent feedback, but I’m hoping this version reaches a few more people. If you enjoy using it, a good rating and a follow would mean a lot and help me figure out what to improve next. I’ve still got plenty of ideas for future updates, but for now, I’m really happy with how MNT has turned out. Thanks for checking it out! :)...
|
1792810448.273231
|
1792896848.273231
|
|
23764
|
Onlinja by @DoMax | Stardance
|
DoMax
|
2
|
55.02
|
946
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-03T20:31:45Z", "hours": 23.0, "multiplier": 17.29, "payout": 394, "blessing": "neutral", "text": "This is Onlinja, and it’s probably one of the best “easy to understand, hard to master” board games you will ever play. It’s built as a passion project, taking the game Linja as inspiration, but adapting it to be accessible anytime, anywhere! This is the second ship and it focuses entirely on making the most out of this app as possible, without making it feel janky. New additions are heavily impacted by community’s own responses to what should be improved, such as clearer indication of turns, tutorial progress saving, and a bit of my own additions, such as the Settings tab and Post-Game Statistics. While the game itself was kept true to its original core look and feel, the codebase underneath was heavily redefined! With new architecture decisions and SoC (separation of concerns) implementations, now it’s not only easy to expand the code, but easy to use in-person too! I really hope you will like this project and show much support for it. Let’s grow a beautiful and open source world together!", "repo": "https://github.com/domasles/onlinja", "demo": "https://onlinja.domax.lt"}, {"ship_num": 2, "ts": "2026-06-28T21:08:16Z", "hours": 29.0, "multiplier": 19.24, "payout": 552, "blessing": "neutral", "text": "After gifting Linja game to my dad on father’s day, I fell in love with it. And I thought to myself - what if there was a digital version? There was none when I started working on the project, so I decided to give it a shot myself. Just imagine - two players face off across eight parallel lanes, calculating every shift in momentum, where one misstep can cause the opponent to leap past. A game, where you need to balance your positions and plan your moves. And, of course, have fun! Inspired by the classic board game Linja, Onlinja brings minimalist, tactical warfare straight to your pocket. Onlinja features Aggressive (one piece moves twice) and Strategic (two different pieces move) gameplay modes, smart UI, bots, and a lightweight mono-repository utilizing React Native/Expo for the frontend, plus a way to both learn the game and play with your friends, not only against highly competitive bots. This game is very portable, as it was designed to be responsive to your screen size. You can try out the Live Demo instantly at https://onlinja.domax.lt Happy playing! I hope you enjoy this game and become a fan of Onlinja yourself!", "repo": "https://github.com/domasles/onlinja", "demo": "https://onlinja.domax.lt"}]...
|
[{"post_id": 81846, "ts": "202 [{"post_id": 81846, "ts": "2026-10-22T18:23:23Z", "hours": 3.0192, "text": "Quality of life improvements I’m happy to report work on Onlinja took one more step further! Before Stardance closes… After contacting Steffen Spiele directly and telling them about Onlinja, a love letter to one of their games, we settled on a mutual opinion of lack of attribution. Luckily, I managed to implement a distinct “credits” tab without casualties :) And, I am happy to present improvements for both developers and users!! 1. User-end improvements Taking a better look at your newest suggestions, I noticed 2 issues: Unclear tutorial Bland highlight colors I tried tackling both. While I couldn’t shorten the tutorial (as I’m not willing to update the rule spec), a new “Try it out” button was added to notify the player about an action block. The colors were boosted to have better distinction compared to standard lanes :) A spinning loader wheel now indicates when the app is ready to use. 2. Dev-end improvements To make Onlinja’s source also feel welcoming for developers, naming conventions, redundant code and skills were upgraded. Imports were refactored for code that’s easier to read and navigate, SoC is a priority while developing (to not make a mess). Expo 57 makes it easier for anyone to develop and test Onlinja, as newer Expo Go versions expect strict Expo 57+ compatibility. Centralized animation and other systems help when making consistent changes :) Conclusion This devlog (likely the last) demonstrates the most mature version of Onlinja singleplayer. As virtually no time is left before Stardance closes, and I won’t be able to implement multiplayer services, I want to conclude this project by saying a big Thank You to every supported and tester, and I hope I can see a big community grow when multiplayer eventually releases :P"}, {"post_id": 21718, "ts": "2026-07-03T20:12:55Z", "hours": 8.8967, "text": "You want it, I got it! How feedback from the community helped me improve Onlinja When I shipped Onlinja, I did not think about much. I had plans, and I still do, but the most important direction this project went to, I think, is the direction real users wanted the project to evolve in. I am super glad that the community’s notes are actually reported back to the developers. And, to my surprise, many opinions were highly similar. This shows 2 aspects: I am doing something well, when most of the personalized reviews say they love the same features. I missed some crucial points, when the same reviews point out similar improvements to be made, even without knowing what others pointed out. Happily, I wasn’t lazy and I read through the opinions. Not only did they make my heart warmer, but also shown that I was not moving forward with the right features. What exactly did I improve? Although the UI/UX experience was regarded as one of THE best by some, it lacked one thing - clarity when playing. Whose turn was it? No clear indication when a turn changed if you didn’t notice small text changing in the header when staring down to a monitor for minutes straight. This is now fixed. Also, a very simple addition included a “save and resume” feature within the tutorial. Now, even if you refresh the tab or browser crashes, you can’t lose tutorial progress! What won’t likely be implemented and why that makes me sad All of the things I said seem great - feedback-based improvements, better clarity and quality-of-life updates that make a project be worth the time spent creating it. But the 2 features I wish I could’ve added were: BotLabs (custom bot maker) Post-game analysis (like in Chess.com ) First feature was impossible to make the way I wanted due to how the game’s layout is constructed. I sacrificed this feature for a better overall coding experience. It’s not as vital for the project to live, but sad that I could not implement it. The second feature was entirely possible, but very difficult to plan out. What should be the data flow? What controls what? That led to me making a compromise - post-game statistics, that tell you these things: How many moves each player took? How many extra turns each player got? How many pieces ran all the way to the opponent’s base? And I think it’s a fair update :) In conclusion I am very pleased with the reviews and Stardance in general. I get to create what I love and share it with people who might love it as well. I am happy that the feedback made me grow stronger and I am thankful for every single person that helped me improve this project anyhow, opening my eyes on what were the real issues. This project is one of my most ambitious yet, and if you want to check it out, the latest version is out at Onlinja’s official site ! If you can, also follow me and star the project on GitHub !"}, {"post_id": 20305, "ts": "2026-07-01T21:21:25Z", "hours": 8.6608, "text": "Control and power - that’s all that I’m after! This devlog brings new ways to control your experience with Onlinja not only as a user, but also a developer. Great news all along! With the latest update in Onlinja, new systems have launched: Settings System: A system where you can tweak your settings and default preferences for when you launch the app (also, replay the tutorial, as the old dedicated tab is now gone). Tab System: More important for developers, but now the development of Onlinja can speed up significantly because of a convenient tab making system. Major Architecture Overhaul: By working on the imports and general structure, the codebase can feel free of 400-lined files that choked the app. New Animations: Although it’s a side effect of that new Tab System, it makes the tab animations feel consistent, and the UX undoubtedly better. Mobile app issues fixed: Even when a dedicated app is not Onlinja’s primary choice for delivery, I will not abandon it as that’s why I picked React Native instead of normal React (this, and animation issues with normal React). So, now the mobile port functions almost exactly as intended, but if you want to have the designed experience, and are a fan of dedicated apps, you can always click “Add to home screen” in your browser! That sounds great! What about BotLabs? BotLabs are currently in the works. I am still thinking about how to make the architecture right and the UX smooth, but they’re soon to be implemented, letting users customize bots and make Bot vs Bot matches or have personalized bots to play against. A playable demo is live with latest changes! Check out Onlinja’s official site !"}, {"post_id": 18292, "ts": "2026-06-29T12:06:12Z", "hours": 5.2406, "text": "PWA and updated experience That’s right, now you can enjoy Onlinja as a pseudo-standalone app! By finally implementing PWA (Progressive Web Application) support to Onlinja, you can simply install it from any mobile browser. Updated experience? What’s it about? This update features several enhancements: The tutorial was revamped to be easier to follow for anyone. This means no more confusing terms and big text chunks where unnecessary. The app is now excluded from any dark mode settings (possible that some rare instances might change the color scheme, but popular plugins and systems should not alter any styling). Slight performance and UX tweaks to make the game feel smoother. Any more updates planned? Yes! I want to implement an analysis tool to every match or “Bot Labs” where everyone can tweak bot parameters and experiment with the algorithms freely. A second ship should be issued when these are implemented. Online crossplay isn’t in any of my near-future plans. A huge thank you for everyone that supports, tests and anyhow helps me build this project!"}, {"post_id": 17273, "ts": "2026-06-28T00:12:42Z", "hours": 9.8469, "text": "How to play this game?? Great news! No more wondering of how this game works! Today I implemented a fully working tutorial system to Onlinja, and it tells everyone about any aspect of the game you could think of. Onboarding will be really easy now! What do I see there? A ship? Correct! Only a good README, logos and deployment left until a ship can be made. The rest of time will be dedicated just for that. What about standalone, non-web builds? This is React Native! Well, I have some good news and some bad news. Good news is that when I tested it, the standalone app build succeeded. Bad news is that it’s full of visual bugs and inconsistencies with the web build. So web builds will be the primary target of this app before I dedicate a separate week just for transformation to a unified solution. But I see no priority for this as web builds work wonderfully!"}, {"post_id": 15995, "ts": "2026-06-25T23:41:51Z", "hours": 7.2086, "text": "A very friendly update! Want to play Onlinja with your friends? No problem, not anymore! Today I finalized implementing the Pass & Play mode, together with some UI and bot logic enhancements. Gameplay is smoother than ever, offering a very pleasing experience! UI upgrades? Finally! After many thoughts of making the game not feel like a slideshow with very static-feeling updates, this devlog’s changes also include a whole new animation overhaul! With fade transitions and more movement the app finally feels responsive. Anything more? Yes! An architectural refactor and a bot logic upgrade was issued. This makes the game both easier to develop and the bot less prone to errors. Previously, if the second move of a turn was illegal, the bot (and the whole game) had no way of knowing and would just freeze. Today it’s been fixed! So, when’s the ship? Soon. Only thing left is a tutorial before playing to easily onboard everyone. As expected, I can’t dedicate myself fully towards this project and the first ship won’t include any networking code. But it might include an analysis tool inspired by chess.com , so stay tuned!"}, {"post_id": 15302, "ts": "2026-06-24T21:03:43Z", "hours": 3.1514, "text": "A bot-tacular evening! What’s new in today’s devlog Finally I have implemented a working bot within Onlinja - it’s configurable, and damn it plays well! The reason it can be so competitive is because it uses a deep-search minimax algorithm, always assuming you make the best move and making the best move itself (with some randomness sparkled on top). Also, it reacts to awards, where more benefit created for itself through several moves, even if 2 distinct move sequences create same amount of value in points, is valued higher for the bot. This helps create insane accuracy, exploitation of game features and more! Note: there’s an easter egg hidden somewhere in plain sight, try to find it! Next steps Aside from the bot, I made the game capable of receiving different controller settings. A controller is the setting of who controls your opponent, current available settings being HUMAN, BOT and SERVER (for future implementation). As the next step I’m planning to make a local one-phone mode to share like a physical board across 2 people. Also, a pre-game tutorial awaits. I’d very much love to implement more whacky gamemodes, that would include powerups, more configuration, different piece setups and more. But I am not sure how much time that would cost me. Conclusion With the first ship of Onlinja coming closer everyday, I am trying to make the user experience as polished as can be. I really hope everyone playing will enjoy this game as much as I do!"}, {"post_id": 14373, "ts": "2026-06-23T14:11:23Z", "hours": 5.3936, "text": "User interface has been implemented! The good After long hours of development, countless design choices gone through and many thoughts of how to structure the project, its base has been laid and it finally features a working UI with an easy to understand UX. The bad It wasn’t easy to set correct boundaries and enginner instructions for AI in a way that it doesn’t have too much freedom hallucinating. After many iterations of edits within AGENTS.md file I hope it won’t eat as much time ever again (but I don’t know). Even though everything seems fine so far, nothing is promised this early in development, and the instruction document may change. What does the current code offer? In the current version of Onlinja players can’t do much - only play with themselves. This was done just to show off how the game will look. Next devlog will most likely include the full bot implementation. What are my further plans? The first ship most likely won’t have any networking code (unless I can learn websockets within the next 5 days), but will offer a human-like bot. Subsequent ships will offer enhanced online capabilities, accounts, leveling, and friend systems, as well as an anonymous mode. I want to make the game similar in mechanics to chess.com - a fully fledged Linja-inspired game, with an online hub!"}, {"post_id": 13415, "ts": "2026-06-21T23:28:57Z", "hours": 3.195, "text": "Today I started working on my project Onlinja! Storytime When I was searching gift ideas for father’s day I suddenly thought of board games. He loves them! And was learning chess at that time too. Having no exact ideas in mind, I went searching. Many games were too complex for me to teach, and I wanted that game to be 3D-printable. I stumbled upon Linja - an abstract and simple strategy game for 2 players. It’s no too popular, but I fell in love with it, made 3D files myself and printed it out! After gifting it, I feel like it’s very much underrated, so I got an idea! The idea The idea is simple - making a local bot and online application that lets anyone enjoy a Linja-inspired game from their phones and browsers! The plan The plan is to take React Native and target web, Android and iOS builds of the app, code a server architecture and a bot algorithm. Why’s it a great project? Not only will I be able to develop my skills in agent harness engineering, testing, web deelopment and websockets (things I haven’t touched yet), but the completed project will be fully functional and entertaining! I have nothing to show off yet, as only the initialization stage is being completed, but I will update you all as soon as I finish doing something!"}]...
|
Title: Onlinja by @DoMax | Stardance
Devlogs:
Tod Title: Onlinja by @DoMax | Stardance
Devlogs:
Today I started working on my project Onlinja! Storytime When I was searching gift ideas for father’s day I suddenly thought of board games. He loves them! And was learning chess at that time too. Having no exact ideas in mind, I went searching. Many games were too complex for me to teach, and I wanted that game to be 3D-printable. I stumbled upon Linja - an abstract and simple strategy game for 2 players. It’s no too popular, but I fell in love with it, made 3D files myself and printed it out! After gifting it, I feel like it’s very much underrated, so I got an idea! The idea The idea is simple - making a local bot and online application that lets anyone enjoy a Linja-inspired game from their phones and browsers! The plan The plan is to take React Native and target web, Android and iOS builds of the app, code a server architecture and a bot algorithm. Why’s it a great project? Not only will I be able to develop my skills in agent harness engineering, testing, web deelopment and websockets (things I haven’t touched yet), but the completed project will be fully functional and entertaining! I have nothing to show off yet, as only the initialization stage is being completed, but I will update you all as soon as I finish doing something!
User interface has been implemented! The good After long hours of development, countless design choices gone through and many thoughts of how to structure the project, its base has been laid and it finally features a working UI with an easy to understand UX. The bad It wasn’t easy to set correct boundaries and enginner instructions for AI in a way that it doesn’t have too much freedom hallucinating. After many iterations of edits within AGENTS.md file I hope it won’t eat as much time ever again (but I don’t know). Even though everything seems fine so far, nothing is promised this early in development, and the instruction document may change. What does the current code offer? In the current version of Onlinja players can’t do much - only play with themselves. This was done just to show off how the game will look. Next devlog will most likely include the full bot implementation. What are my further plans? The first ship most likely won’t have any networking code (unless I can learn websockets within the next 5 days), but will offer a human-like bot. Subsequent ships will offer enhanced online capabilities, accounts, leveling, and friend systems, as well as an anonymous mode. I want to make the game similar in mechanics to chess.com - a fully fledged Linja-inspired game, with an online hub!
A bot-tacular evening! What’s new in today’s devlog Finally I have implemented a working bot within Onlinja - it’s configurable, and damn it plays well! The reason it can be so competitive is because it uses a deep-search minimax algorithm, always assuming you make the best move and making the best move itself (with some randomness sparkled on top). Also, it reacts to awards, where more benefit created for itself through several moves, even if 2 distinct move sequences create same amount of value in points, is valued higher for the bot. This helps create insane accuracy, exploitation of game features and more! Note: there’s an easter egg hidden somewhere in plain sight, try to find it! Next steps Aside from the bot, I made the game capable of receiving different controller settings. A controller is the setting of who controls your opponent, current available settings being HUMAN, BOT and SERVER (for future implementation). As the next step I’m planning to make a local one-phone mode to share like a physical board across 2 people. Also, a pre-game tutorial awaits. I’d very much love to implement more whacky gamemodes, that would include powerups, more configuration, different piece setups and more. But I am not sure how much time that would cost me. Conclusion With the first ship of Onlinja coming closer everyday, I am trying to make the user experience as polished as can be. I really hope everyone playing will enjoy this game as much as I do!
A very friendly update! Want to play Onlinja with your friends? No problem, not anymore! Today I finalized implementing the Pass & Play mode, together with some UI and bot logic enhancements. Gameplay is smoother than ever, offering a very pleasing experience! UI upgrades? Finally! After many thoughts of making the game not feel like a slideshow with very static-feeling updates, this devlog’s changes also include a whole new animation overhaul! With fade transitions and more movement the app finally feels responsive. Anything more? Yes! An architectural refactor and a bot logic upgrade was issued. This makes the game both easier to develop and the bot less prone to errors. Previously, if the second move of a turn was illegal, the bot (and the whole game) had no way of knowing and would just freeze. Today it’s been fixed! So, when’s the ship? Soon. Only thing left is a tutorial before playing to easily onboard everyone. As expected, I can’t dedicate myself fully towards this project and the first ship won’t include any networking code. But it might include an analysis tool inspired by chess.com , so stay tuned!
How to play this game?? Great news! No more wondering of how this game works! Today I implemented a fully working tutorial system to Onlinja, and it tells everyone about any aspect of the game you could think of. Onboarding will be really easy now! What do I see there? A ship? Correct! Only a good README, logos and deployment left until a ship can be made. The rest of time will be dedicated just for that. What about standalone, non-web builds? This is React Native! Well, I have some good news and some bad news. Good news is that when I tested it, the standalone app build succeeded. Bad news is that it’s full of visual bugs and inconsistencies with the web build. So web builds will be the primary target of this app before I dedicate a separate week just for transformation to a unified solution. But I see no priority for this as web builds work wonderfully!
PWA and updated experience That’s right, now you can enjoy Onlinja as a pseudo-standalone app! By finally implementing PWA (Progressive Web Application) support to Onlinja, you can simply install it from any mobile browser. Updated experience? What’s it about? This update features several enhancements: The tutorial was revamped to be easier to follow for anyone. This means no more confusing terms and big text chunks where unnecessary. The app is now excluded from any dark mode settings (possible that some rare instances might change the color scheme, but popular plugins and systems should not alter any styling). Slight performance and UX tweaks to make the game feel smoother. Any more updates planned? Yes! I want to implement an analysis tool to every match or “Bot Labs” where everyone can tweak bot parameters and experiment with the algorithms freely. A second ship should be issued when these are implemented. Online crossplay isn’t in any of my near-future plans. A huge thank you for everyone that supports, tests and anyhow helps me build this project!
Control and power - that’s all that I’m after! This devlog brings new ways to control your experience with Onlinja not only as a user, but also a developer. Great news all along! With the latest update in Onlinja, new systems have launched: Settings System: A system where you can tweak your settings and default preferences for when you launch the app (also, replay the tutorial, as the old dedicated tab is now gone). Tab System: More important for developers, but now the development of Onlinja can speed up significantly because of a convenient tab making system. Major Architecture Overhaul: By working on the imports and general structure, the codebase can feel free of 400-lined files that choked the app. New Animations: Although it’s a side effect of that new Tab System, it makes the tab animations feel consistent, and the UX undoubtedly better. Mobile app issues fixed: Even when a dedicated app is not Onlinja’s primary choice for delivery, I will not abandon it as that’s why I picked React Native instead of normal React (this, and animation issues with normal React). So, now the mobile port functions almost exactly as intended, but if you want to have the designed experience, and are a fan of dedicated apps, you can always click “Add to home screen” in your browser! That sounds great! What about BotLabs? BotLabs are currently in the works. I am still thinking about how to make the architecture right and the UX smooth, but they’re soon to be implemented, letting users customize bots and make Bot vs Bot matches or have personalized bots to play against. A playable demo is live with latest changes! Check out Onlinja’s official site !
You want it, I got it! How feedback from the community helped me improve Onlinja When I shipped Onlinja, I did not think about much. I had plans, and I still do, but the most important direction this project went to, I think, is the direction real users wanted the project to evolve in. I am super glad that the community’s notes are actually reported back to the developers. And, to my surprise, many opinions were highly similar. This shows 2 aspects: I am doing something well, when most of the personalized reviews say they love the same features. I missed some crucial points, when the same reviews point out similar improvements to be made, even without knowing what others pointed out. Happily, I wasn’t lazy and I read through the opinions. Not only did they make my heart warmer, but also shown that I was not moving forward with the right features. What exactly did I improve? Although the UI/UX experience was regarded as one of THE best by some, it lacked one thing - clarity when playing. Whose turn was it? No clear indication when a turn changed if you didn’t notice small text changing in the header when staring down to a monitor for minutes straight. This is now fixed. Also, a very simple addition included a “save and resume” feature within the tutorial. Now, even if you refresh the tab or browser crashes, you can’t lose tutorial progress! What won’t likely be implemented and why that makes me sad All of the things I said seem great - feedback-based improvements, better clarity and quality-of-life updates that make a project be worth the time spent creating it. But the 2 features I wish I could’ve added were: BotLabs (custom bot maker) Post-game analysis (like in Chess.com ) First feature was impossible to make the way I wanted due to how the game’s layout is constructed. I sacrificed this feature for a better overall coding experience. It’s not as vital for the project to live, but sad that I could not implement it. The second feature was entirely possible, but very difficult to plan out. What should be the data flow? What controls what? That led to me making a compromise - post-game statistics, that tell you these things: How many moves each player took? How many extra turns each player got? How many pieces ran all the way to the opponent’s base? And I think it’s a fair update :) In conclusion I am very pleased with the reviews and Stardance in general. I get to create what I love and share it with people who might love it as well. I am happy that the feedback made me grow stronger and I am thankful for every single person that helped me improve this project anyhow, opening my eyes on what were the real issues. This project is one of my most ambitious yet, and if you want to check it out, the latest version is out at Onlinja’s official site ! If you can, also follow me and star the project on GitHub !
Quality of life improvements I’m happy to report work on Onlinja took one more step further! Before Stardance closes… After contacting Steffen Spiele directly and telling them about Onlinja, a love letter to one of their games, we settled on a mutual opinion of lack of attribution. Luckily, I managed to implement a distinct “credits” tab without casualties :) And, I am happy to present improvements for both developers and users!! 1. User-end improvements Taking a better look at your newest suggestions, I noticed 2 issues: Unclear tutorial Bland highlight colors I tried tackling both. While I couldn’t shorten the tutorial (as I’m not willing to update the rule spec), a new “Try it out” button was added to notify the player about an action block. The colors were boosted to have better distinction compared to standard lanes :) A spinning loader wheel now indicates when the app is ready to use. 2. Dev-end improvements To make Onlinja’s source also feel welcoming for developers, naming conventions, redundant code and skills were upgraded. Imports were refactored for code that’s easier to read and navigate, SoC is a priority while developing (to not make a mess). Expo 57 makes it easier for anyone to develop and test Onlinja, as newer Expo Go versions expect strict Expo 57+ compatibility. Centralized animation and other systems help when making consistent changes :) Conclusion This devlog (likely the last) demonstrates the most mature version of Onlinja singleplayer. As virtually no time is left before Stardance closes, and I won’t be able to implement multiplayer services, I want to conclude this project by saying a big Thank You to every supported and tester, and I hope I can see a big community grow when multiplayer eventually releases :P
Ships:
After gifting Linja game to my dad on father’s day, I fell in love with it. And I thought to myself - what if there was a digital version? There was none when I started working on the project, so I decided to give it a shot myself. Just imagine - two players face off across eight parallel lanes, calculating every shift in momentum, where one misstep can cause the opponent to leap past. A game, where you need to balance your positions and plan your moves. And, of course, have fun! Inspired by the classic board game Linja, Onlinja brings minimalist, tactical warfare straight to your pocket. Onlinja features Aggressive (one piece moves twice) and Strategic (two different pieces move) gameplay modes, smart UI, bots, and a lightweight mono-repository utilizing React Native/Expo for the frontend, plus a way to both learn the game and play with your friends, not only against highly competitive bots. This game is very portable, as it was designed to be responsive to your screen size. You can try out the Live Demo instantly at https://onlinja.domax.lt Happy playing! I hope you enjoy this game and become a fan of Onlinja yourself!
This is Onlinja, and it’s probably one of the best “easy to understand, hard to master” board games you will ever play. It’s built as a passion project, taking the game Linja as inspiration, but adapting it to be accessible anytime, anywhere! This is the second ship and it focuses entirely on making the most out of this app as possible, without making it feel janky. New additions are heavily impacted by community’s own responses to what should be improved, such as clearer indication of turns, tutorial progress saving, and a bit of my own additions, such as the Settings tab and Post-Game Statistics. While the game itself was kept true to its original core look and feel, the codebase underneath was heavily redefined! With new architecture decisions and SoC (separation of concerns) implementations, now it’s not only easy to expand the code, but easy to use in-person too! I really hope you will like this project and show much support for it. Let’s grow a beautiful and open source world together!...
|
1792846456.8759336
|
1792932856.8759336
|
|
46496
|
Light by @Eclipse | Stardance
|
Eclipse
|
1
|
52.27
|
835
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-30T19:28:48Z", "hours": 48.0, "multiplier": 16.49, "payout": 835, "blessing": "neutral", "text": "Shipvlog — Light 🌙 What did you make? Everyone makes a personal website showing what they’ve built, accomplished, or are currently working on. . I wanted to make something that asks a slightly “different” question: “What is happening inside this mind?” . That’s basically what Light is. . Alongside the usual portfolio stuff, there’s a Lab containing unfinished ideas, abandoned projects, current obsessions, and questions I’m still thinking about… Basically,, everything a normal portfolio politely hides…🗿 . What was challenging? Lwk Everything. 😭 . I spent an absolutely unreasonable amount of time designing tiny details, animations, typography, spacing, colors, transitions, and things that probably took five seconds to notice and five hours to make…. . I wanted the homepage title to feel more like Light was being written into existence ,,, the glitch transition into the Lab to feel intentional, and every page to have its own atmosphere… (did I ever mention the fact that Light was my nickname all along?) . The three main pages use red, blue, and warm white. Because, almost everything we see can be represented through RGB,, so I treated them as three different sides of me that mix together into Idhant (w a little twist lol) Underneath them all, it’s still the same guy. Hence the same nav too :) . The geometric lines in About are meant to represent me too: chaotic, interconnected, and hopefully still beautiful (🥀) . And yes, making all of this responsive was painful…. Excruciatingly painful. 😭💔 . What am I proud of? Mostly the fact that something I had imagined for weeks actually exists now…LIVE… . I deliberately left parts of it open to interpretation too. The boy holding the bouquet and book could be waiting for someone while reading a book to kill time, could have been given the bouquet while being told by someone “you are my light” , could be heartbroken, or could mean literally anything…. I liked not explaining everything… Things to try Move your cursor through the snow (don’t ask me why 😭, it’s fun) Watch the text glitch Click Light on the homepage and enter the Lab Explore the Lab sections Click the 02 / ABOUT on the homepage and enter the About page Notice the different page colors and text-selection colors Try the site on both desktop and mobile . Before testing . The site is best experienced on a Chromium-based browser . . Also, disable any browser dark-mode extension , otherwise it may decide my carefully chosen colors are merely suggestions. 💔 . Light’s Live here: https://alchemic-eclipse.github.io/light/ . And,,,, after way too many hours, Light is finally live. 🫠 . Not perfect. . Just mine ❤️🩹 Thank you for reading it through..!! ❤️🩹", "repo": "https://github.com/Alchemic-Eclipse/light", "demo": "https://alchemic-eclipse.github.io/light/"}]...
|
[{"post_id": 81847, "ts": "202 [{"post_id": 81847, "ts": "2026-10-22T18:28:24Z", "hours": 4.2711, "text": "Welcome back And here I am, just after writing Aporia’s devlog, writing this for Light (the site, not me obv 🗿) . But I’ll keep it short, While I was on break, I kept updating information here n there on the site and made some minor changes. . From now on, I’ll be working properly on the site, making it better every day..!! . And that’s all for today lol…!! See ya tomorrow! . P.S. Idk what to add in attachment, so why not a meme again? (it isn’t even related to web dev, but I found it so funny, had to add it 💔)"}, {"post_id": 75684, "ts": "2026-09-30T19:06:50Z", "hours": 0.9286, "text": "Final Devlog of Light yep, as the title suggests, this is it. I have somehow, despite being an INTP, been able to complete the project before the deadline ( or perhaps I should say, exactly at the deadline 😭) . But anyways, Completed the Readme Fixed minor issues (console errors) Fixed responsiveness issues Added a favicon And yeah, that’s all ig…?? It has been an honor tbh, I’ve learnt soooo many things while making this site… and revised soooo many concepts…. I was lwk a beginner in web-dev before this, and now, well a bit better I suppose? 😭 . Either way,,, It was fun…. :) Thank you for everything..!!! ❤️🩹 . P.S. Idk what to add as screenshot for this one, so just added the About page of my site 🗿🤷🏻♂️"}, {"post_id": 75640, "ts": "2026-09-30T17:01:59Z", "hours": 6.8375, "text": "Day-9 Light I think I’ve officially reached the stage where this project is consuming me 😭💔 . I couldn’t really write devlogs that often ‘cause I’ve been just TOO busy trying to make this thing look pretty 😭 . And unfortunately, having a creative perfectionist brain while also trying to keep everything minimalist is an awful combination. I kept wanting to add stuff, removing it because it was “too much”, adding it again, moving things around, staring at it for 20 min, and realizing that it looked 4% worse than before 🗿 . Anyways… . I’ve made some pretty major progress today. . The biggest one: Light is basically complete. Added all the content, finished the different sections, and finally got the whole thing to feel like an actual part of the site instead of an empty page with suspicious amounts of negative space 🥀 . I also finally added and polished the About page, w a bunch of minor design fixes along the way. . Completed: Unfinished Graveyard Now Curiosities And I also added snow interaction , which is probably one of those completely unnecessary things that somehow took way longer than it had any business to… ;-; . The funny part is, that the actual feature list doesn’t even look THAT insane. (compared to my mental health rn 💔) . But every single little design decision took FOREVER, because I wanted the site to feel minimal, without feeling empty.. Interesting, without feeling overloaded.. And slightly uncanny without just looking like I discovered CSS animations yesterday 🤷🏻♂️ . At this point, I’m lwk happy w how it’s coming together tho. . The site has WAYY more personality now. . The next goal is basically finishing whatever tiny things are still bothering me, and then SHIP EM before I lose the remaining fragments of my sanity 😭 . And nvm,, that’s it for today ;-;;; . Ig this could be the last devlog? Or nvm, I still have to write the Readme, GG, that should be the last one lol.. Whatever,,,, Good Evening 🦋"}, {"post_id": 74879, "ts": "2026-09-28T14:20:34Z", "hours": 4.4908, "text": "Day-8 Light At this point, I think Im lwk about to crash out because of how long this is taking me 😭💔 (plus a bad headache) . I’ve added a new page to my site, called Light’s Lab, something way more interesting than the home page fs. . Also Added a cool glitchy effect as a transition, to give it that uncanny feel… And DAMN it took me soo longg to learn how to do ts 😭😭 . After this, I’m done with adding animations/transitions 🥀 Aghh my head hurts so badd 😭 . I think the next goal for me is to design the Lab page properly… then think of adding something new… . Initially I planned to complete it by Sept 30… but let’s see if I can 🫠 . Anyways, that’s it for todayyy Dobroye utroo!!!"}, {"post_id": 73589, "ts": "2026-09-25T13:08:56Z", "hours": 5.705, "text": "Day-7 Light It appears as if somoene’s genuinely addicted to this project 🗿 . Because my productivity is PEAK right now 🕯️ . I’ve lwk changed the entire base design of Light, simply because I felt like it 😭 (I wanted it to look better) . Here’s a list: Added Basic fade-in animation when site is loaded Added a leaning hero-figure and changed typography (Some fonts, sizes, colors, etc) Added a glitch effect for the Hero sub-text Added Snow, as it smhow fits the theme beautifully There were sm things that people suggested me to add, but I was like: Nah ;-; For eg: Arrow key navigation . But someone discovering that R jumps to Archive would be mildly amusing for approximately 4 seconds… So I scrapped that idea 🤷🏻♂️ . The snowflakes one was particularly interesting… because…. to animate the snowflakes I used: new position = old position + velocity Which is basically a tiny Euler integration step 🗿 So, my snowflakes, accidentaly became a physics simulation… 🥀 For some reason, I really cannot escape ts 💔 . And then the tiny intricacies like giving them close but random velocities for realism (yeah, close, because if not: that would look like the snowflakes had all received contradictory weather reports 😭) . and once they leave the screen, make them re-enter from the right and top (70:30 :: Top:right % of snowflakes generated), which is what turns this into a continuous wind field rather than 80 flakes having a one-way death march 🗿 . And yeah, that’s basically it, for today…!! and as usual,, Ohayoo!!! (Good Morningg, not Ohio 😭💔)"}, {"post_id": 72825, "ts": "2026-09-23T20:23:53Z", "hours": 3.5156, "text": "Day-6 Light HOLYYY Productivity!! 🔥 Added SOOOOO many things today . Here’s the list: Polished the Archive section Added “About signature” and href links Added content to Contact section and footer- Polished them too Made the site responsive Added selection option (selecting a text) Soo, when selecting a text, instead of the default blue color, it’d use another color that respects the color scheme of the site… . With that, Phase-1 of the Site is over… We have a site that’s essentially complete in itself start to end.And so, Phase-2 of Light has started, which is mostly all about JavaScript and additional sections/features. (Lwk Exciting as hell) . Also, I decided to add “AUTONOMY · TRANSCENDENCE · ERUDITION” as the “About Signature”, because these are the 3 things that I value THE MOST… Especially Autonomy…………. Is it a bit grandiose ? Yeah… but my site’s called Light (Alchemic Eclipse) , so we’re not exactly filing taxes here 🤷🏻♂️🥀 . But anyways,, that’s it for todayy!! Have a beautiful morning 🍀"}, {"post_id": 72239, "ts": "2026-09-22T14:52:12Z", "hours": 2.65, "text": "Day-5 Light Added content to About section Added a few projects to Archive section Added basic design to Archive section. Next goal: Polish Archive’s design Add content to Contact section and design that too got big plans ahead..!!"}, {"post_id": 71391, "ts": "2026-09-20T18:52:49Z", "hours": 4.5592, "text": "Day-4 Light Guess who’s back? . Seems someone’s back from his hiatus 🗿 . yep, so now that’s Aporia’s done and dusted, I realized I need to also complete my site, so here I am… . I’ve merged Gravitas into Light because it’s apparently Aporia turned out to be too big, but small enough that I could actually finish it before Light comes knocking with a deadline shaped baseball bat 🤷🏻♂️ . I’ll add a special section for it on my site, as a mystery or a puzzle of some kind..? perhaps… . And in the meantime, while I was working on Aporia, I tried testing/changing some bits and features of Light, at once almost changed the entire style upside down… but turns out none of them could beat my original vision… So with some bits of tweaks, I added the About page a month ago… I know I’m a bit early here,, but whatever 😭 . And that’s it for this devlog 🦋 Bbyeee..!! . P.S. Idk what screenshot to add here as I’ve just restarted working on it so no major updates yet,, let me just add a page of my physics notes which would anyway be on my site 🐈"}, {"post_id": 51095, "ts": "2026-08-20T16:20:04Z", "hours": 2.9694, "text": "Day-3 Light At this rate, it looks like the project is gonna take forever 😭🤷🏻♂️ Added an about section Designed it properly Made subtle changes to give the site a premium look. . The next part is simply add content to Archive and contact section, but that should relatively take less time, because most of the time today was spent on designing.. . (yes, btw,,,, if you still haven’t noticed, I’m a kinda perfectionist when it comes to designs 🗿) . And that’s all for today, for Light 🫡 . Thank you for reading through..!! 🌙 . P.S. Due to time constraints, I’m thinking of working on Light and Gravitas on alternate days, so that I get more time for studies… 🐈 Hopefully I can finish them soon..!! I really do enjoy working on both of em 🙃"}, {"post_id": 48873, "ts": "2026-08-17T13:16:35Z", "hours": 15.4381, "text": "Day-2: Light Completed the basic structure. Added some basic design while making it a little responsive. And trust me, you “don’t” wanna know how much time I spent just changing and trying new designs/fonts/etc… ☠️ . Tomorrow, I’ll likely complete the other sections while adding some more cool features ig… . and that’s all for today 🙃 . P.S. Feel free to suggest some better designs if it can make it look better lol…!!"}, {"post_id": 45127, "ts": "2026-08-11T12:47:00Z", "hours": 0.5603, "text": "The Beginning . I’ll be building a personal site of mine, describing things I am working on, and my on going works, especially in the realm of academia and others… . I am done with setting up and connecting everything, the next steps include building a basic structure of the website while learning web dev (yeah, I’m a beginner lol)… . And then adding the content.. Then making it look bearable to human eyes 🗿 (aka make it aesthetic) . So that’s mostly all for today..!! Thank you :) . P.S. It seems it won’t let me post till I add a pic, so let me add a pic that I’d anyways add on my website in future {aka, my equations 🗿}"}]...
|
Title: Light by @Eclipse | Stardance
Devlogs:
The Title: Light by @Eclipse | Stardance
Devlogs:
The Beginning . I’ll be building a personal site of mine, describing things I am working on, and my on going works, especially in the realm of academia and others… . I am done with setting up and connecting everything, the next steps include building a basic structure of the website while learning web dev (yeah, I’m a beginner lol)… . And then adding the content.. Then making it look bearable to human eyes 🗿 (aka make it aesthetic) . So that’s mostly all for today..!! Thank you :) . P.S. It seems it won’t let me post till I add a pic, so let me add a pic that I’d anyways add on my website in future {aka, my equations 🗿}
Day-2: Light Completed the basic structure. Added some basic design while making it a little responsive. And trust me, you “don’t” wanna know how much time I spent just changing and trying new designs/fonts/etc… ☠️ . Tomorrow, I’ll likely complete the other sections while adding some more cool features ig… . and that’s all for today 🙃 . P.S. Feel free to suggest some better designs if it can make it look better lol…!!
Day-3 Light At this rate, it looks like the project is gonna take forever 😭🤷🏻♂️ Added an about section Designed it properly Made subtle changes to give the site a premium look. . The next part is simply add content to Archive and contact section, but that should relatively take less time, because most of the time today was spent on designing.. . (yes, btw,,,, if you still haven’t noticed, I’m a kinda perfectionist when it comes to designs 🗿) . And that’s all for today, for Light 🫡 . Thank you for reading through..!! 🌙 . P.S. Due to time constraints, I’m thinking of working on Light and Gravitas on alternate days, so that I get more time for studies… 🐈 Hopefully I can finish them soon..!! I really do enjoy working on both of em 🙃
Day-4 Light Guess who’s back? . Seems someone’s back from his hiatus 🗿 . yep, so now that’s Aporia’s done and dusted, I realized I need to also complete my site, so here I am… . I’ve merged Gravitas into Light because it’s apparently Aporia turned out to be too big, but small enough that I could actually finish it before Light comes knocking with a deadline shaped baseball bat 🤷🏻♂️ . I’ll add a special section for it on my site, as a mystery or a puzzle of some kind..? perhaps… . And in the meantime, while I was working on Aporia, I tried testing/changing some bits and features of Light, at once almost changed the entire style upside down… but turns out none of them could beat my original vision… So with some bits of tweaks, I added the About page a month ago… I know I’m a bit early here,, but whatever 😭 . And that’s it for this devlog 🦋 Bbyeee..!! . P.S. Idk what screenshot to add here as I’ve just restarted working on it so no major updates yet,, let me just add a page of my physics notes which would anyway be on my site 🐈
Day-5 Light Added content to About section Added a few projects to Archive section Added basic design to Archive section. Next goal: Polish Archive’s design Add content to Contact section and design that too got big plans ahead..!!
Day-6 Light HOLYYY Productivity!! 🔥 Added SOOOOO many things today . Here’s the list: Polished the Archive section Added “About signature” and href links Added content to Contact section and footer- Polished them too Made the site responsive Added selection option (selecting a text) Soo, when selecting a text, instead of the default blue color, it’d use another color that respects the color scheme of the site… . With that, Phase-1 of the Site is over… We have a site that’s essentially complete in itself start to end.And so, Phase-2 of Light has started, which is mostly all about JavaScript and additional sections/features. (Lwk Exciting as hell) . Also, I decided to add “AUTONOMY · TRANSCENDENCE · ERUDITION” as the “About Signature”, because these are the 3 things that I value THE MOST… Especially Autonomy…………. Is it a bit grandiose ? Yeah… but my site’s called Light (Alchemic Eclipse) , so we’re not exactly filing taxes here 🤷🏻♂️🥀 . But anyways,, that’s it for todayy!! Have a beautiful morning 🍀
Day-7 Light It appears as if somoene’s genuinely addicted to this project 🗿 . Because my productivity is PEAK right now 🕯️ . I’ve lwk changed the entire base design of Light, simply because I felt like it 😭 (I wanted it to look better) . Here’s a list: Added Basic fade-in animation when site is loaded Added a leaning hero-figure and changed typography (Some fonts, sizes, colors, etc) Added a glitch effect for the Hero sub-text Added Snow, as it smhow fits the theme beautifully There were sm things that people suggested me to add, but I was like: Nah ;-; For eg: Arrow key navigation . But someone discovering that R jumps to Archive would be mildly amusing for approximately 4 seconds… So I scrapped that idea 🤷🏻♂️ . The snowflakes one was particularly interesting… because…. to animate the snowflakes I used: new position = old position + velocity Which is basically a tiny Euler integration step 🗿 So, my snowflakes, accidentaly became a physics simulation… 🥀 For some reason, I really cannot escape ts 💔 . And then the tiny intricacies like giving them close but random velocities for realism (yeah, close, because if not: that would look like the snowflakes had all received contradictory weather reports 😭) . and once they leave the screen, make them re-enter from the right and top (70:30 :: Top:right % of snowflakes generated), which is what turns this into a continuous wind field rather than 80 flakes having a one-way death march 🗿 . And yeah, that’s basically it, for today…!! and as usual,, Ohayoo!!! (Good Morningg, not Ohio 😭💔)
Day-8 Light At this point, I think Im lwk about to crash out because of how long this is taking me 😭💔 (plus a bad headache) . I’ve added a new page to my site, called Light’s Lab, something way more interesting than the home page fs. . Also Added a cool glitchy effect as a transition, to give it that uncanny feel… And DAMN it took me soo longg to learn how to do ts 😭😭 . After this, I’m done with adding animations/transitions 🥀 Aghh my head hurts so badd 😭 . I think the next goal for me is to design the Lab page properly… then think of adding something new… . Initially I planned to complete it by Sept 30… but let’s see if I can 🫠 . Anyways, that’s it for todayyy Dobroye utroo!!!
Day-9 Light I think I’ve officially reached the stage where this project is consuming me 😭💔 . I couldn’t really write devlogs that often ‘cause I’ve been just TOO busy trying to make this thing look pretty 😭 . And unfortunately, having a creative perfectionist brain while also trying to keep everything minimalist is an awful combination. I kept wanting to add stuff, removing it because it was “too much”, adding it again, moving things around, staring at it for 20 min, and realizing that it looked 4% worse than before 🗿 . Anyways… . I’ve made some pretty major progress today. . The biggest one: Light is basically complete. Added all the content, finished the different sections, and finally got the whole thing to feel like an actual part of the site instead of an empty page with suspicious amounts of negative space 🥀 . I also finally added and polished the About page, w a bunch of minor design fixes along the way. . Completed: Unfinished Graveyard Now Curiosities And I also added snow interaction , which is probably one of those completely unnecessary things that somehow took way longer than it had any business to… ;-; . The funny part is, that the actual feature list doesn’t even look THAT insane. (compared to my mental health rn 💔) . But every single little design decision took FOREVER, because I wanted the site to feel minimal, without feeling empty.. Interesting, without feeling overloaded.. And slightly uncanny without just looking like I discovered CSS animations yesterday 🤷🏻♂️ . At this point, I’m lwk happy w how it’s coming together tho. . The site has WAYY more personality now. . The next goal is basically finishing whatever tiny things are still bothering me, and then SHIP EM before I lose the remaining fragments of my sanity 😭 . And nvm,, that’s it for today ;-;;; . Ig this could be the last devlog? Or nvm, I still have to write the Readme, GG, that should be the last one lol.. Whatever,,,, Good Evening 🦋
Final Devlog of Light yep, as the title suggests, this is it. I have somehow, despite being an INTP, been able to complete the project before the deadline ( or perhaps I should say, exactly at the deadline 😭) . But anyways, Completed the Readme Fixed minor issues (console errors) Fixed responsiveness issues Added a favicon And yeah, that’s all ig…?? It has been an honor tbh, I’ve learnt soooo many things while making this site… and revised soooo many concepts…. I was lwk a beginner in web-dev before this, and now, well a bit better I suppose? 😭 . Either way,,, It was fun…. :) Thank you for everything..!!! ❤️🩹 . P.S. Idk what to add as screenshot for this one, so just added the About page of my site 🗿🤷🏻♂️
Welcome back And here I am, just after writing Aporia’s devlog, writing this for Light (the site, not me obv 🗿) . But I’ll keep it short, While I was on break, I kept updating information here n there on the site and made some minor changes. . From now on, I’ll be working properly on the site, making it better every day..!! . And that’s all for today lol…!! See ya tomorrow! . P.S. Idk what to add in attachment, so why not a meme again? (it isn’t even related to web dev, but I found it so funny, had to add it 💔)
Ships:
Shipvlog — Light 🌙 What did you make? Everyone makes a personal website showing what they’ve built, accomplished, or are currently working on. . I wanted to make something that asks a slightly “different” question: “What is happening inside this mind?” . That’s basically what Light is. . Alongside the usual portfolio stuff, there’s a Lab containing unfinished ideas, abandoned projects, current obsessions, and questions I’m still thinking about… Basically,, everything a normal portfolio politely hides…🗿 . What was challenging? Lwk Everything. 😭 . I spent an absolutely unreasonable amount of time designing tiny details, animations, typography, spacing, colors, transitions, and things that probably took five seconds to notice and five hours to make…. . I wanted the homepage title to feel more like Light was being written into existence ,,, the glitch transition into the Lab to feel intentional, and every page to have its own atmosphere… (did I ever mention the fact that Light was my nickname all along?) . The three main pages use red, blue, and warm white. Because, almost everything we see can be represented through RGB,, so I treated them as three different sides of me that mix together into Idhant (w a little twist lol) Underneath them all, it’s still the same guy. Hence the same nav too :) . The geometric lines in About are meant to represent me too: chaotic, interconnected, and hopefully still beautiful (🥀) . And yes, making all of this responsive was painful…. Excruciatingly painful. 😭💔 . What am I proud of? Mostly the fact that something I had imagined for weeks actually exists now…LIVE… . I deliberately left parts of it open to interpretation too. The boy holding the bouquet and book could be waiting for someone while reading a book to kill time, could have been given the bouquet while being told by someone “you are my light” , could be heartbroken, or could mean literally anything…. I liked not explaining everything… Things to try Move your cursor through the snow (don’t ask me why 😭, it’s fun) Watch the text glitch Click Light on the homepage and enter the Lab Explore the Lab sections Click the 02 / ABOUT on the homepage and enter the About page Notice the different page colors and text-selection colors Try the site on both desktop and mobile . Before testing . The site is best experienced on a Chromium-based browser . . Also, disable any browser dark-mode extension , otherwise it may decide my carefully chosen colors are merely suggestions. 💔 . Light’s Live here: https://alchemic-eclipse.github.io/light/ . And,,,, after way too many hours, Light is finally live. 🫠 . Not perfect. . Just mine ❤️🩹 Thank you for reading it through..!! ❤️🩹...
|
1792853721.6950161
|
1792940121.6950161
|
|
70957
|
Plantsafe AI by @rounaknayak17649 | Stardance
|
rounaknayak17649
|
0
|
2.88
|
0
|
[]
|
[{"post_id": 81850, "ts": "202 [{"post_id": 81850, "ts": "2026-10-22T18:34:07Z", "hours": 2.8775, "text": "collecting dataset for different plants and creating categories"}]...
|
Title: Plantsafe AI by @rounaknayak17649 | Stardan Title: Plantsafe AI by @rounaknayak17649 | Stardance
Devlogs:
collecting dataset for different plants and creating categories...
|
1792694833.2459664
|
1793299633.2459664
|