|
48715
|
list by @flyingfish | Stardance
|
flyingfish
|
1
|
112.62
|
787
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-02T03:02:48Z", "hours": 106.0, "multiplier": 7.45, "payout": 787, "blessing": "neutral", "text": "i have used a lot of different lists apps but all of them are so coprate and suck so i made my own i have never used sql before so it was a learning experience i also have never used any time library before but this was fun there is a lot of features i want able to add becouse of time and scope reasons so the code is built in a way that it can updated really easly", "repo": "https://github.com/dinotiger01/list", "demo": "https://github.com/dinotiger01/list/releases/tag/idktag_or_smth"}]...
|
[{"post_id": 68433, "ts": "202 [{"post_id": 68433, "ts": "2026-09-15T03:39:48Z", "hours": 6.6206, "text": "windows works now i had like 20 commits before all of this"}, {"post_id": 59962, "ts": "2026-09-02T01:16:48Z", "hours": 9.9725, "text": "i finished all the git action things and all of the last minute changes ie small bug fixes i am now reddy to ship"}, {"post_id": 58674, "ts": "2026-08-31T05:48:43Z", "hours": 5.9939, "text": "tons of styleing updates i have spent the past 6 hurs strait styling and validating inputs however it is finally done i just need to do the git hub things and add compatability how ever thats tomarow s problem"}, {"post_id": 58463, "ts": "2026-08-30T21:42:23Z", "hours": 7.7864, "text": "ahhhhhh i did like ui things i am going insane"}, {"post_id": 57864, "ts": "2026-08-30T05:35:55Z", "hours": 5.1236, "text": "this is my third devlog today 10hr logg to day btw :teird: a fileter bredet edit deleate and add new people"}, {"post_id": 57703, "ts": "2026-08-29T23:00:01Z", "hours": 4.9544, "text": "jank i have made the ability to add and remove types i will refine later ngl edit: like 10 minits after i posted this i got the code to work where the type updates all the list that already exist"}, {"post_id": 57430, "ts": "2026-08-29T16:03:12Z", "hours": 6.0314, "text": "filter the audio on the video is like really bad my main mic stopped working so i taped a web cam to my face :idk_man: core filtering the filrering works by when a task isbeing loaded to the page it will go to a function that will check if it can be used the filter function will check baised of 4 variables stored in the c++ then the qml sends new variables over then i also spent like hours on this but i made it so it wont check any filter if nothing is selected filter by name this is a simple it will just send a string over then check is filter string is contained in the task name filter by person this uses a vector of intigers it will loop through both then if if there is a the same intiger in booth it will show btw peple are stored by index filter by type the type is stored as a vector of strings it does te same and loops through the filter strings and if the task type is equal it will allow the task filter by date this was defenetly the most dificalt one and it is stored av a vector<time_t> there are 2 text boxes the first one is a lower limit the seconed is an uper limit if eather is blank it will not check it if the second one has a date it will only show dates on or before that onee if the second one has a date it will only show tasks after that date if both have dates it will check in betewwn them"}, {"post_id": 56777, "ts": "2026-08-28T17:51:02Z", "hours": 5.8836, "text": "really quick little devlog i just added the abiltiy to edit tasks it works by opening the place wheree you create task then sets all the value manualy it was like supper hard to make it so you can edit a task then create a task then go back to editing becouse if a variable was not assined by acident it would all crash"}, {"post_id": 56195, "ts": "2026-08-27T20:49:57Z", "hours": 8.5181, "text": "recuring there is a lot (btw i already wrote all of this and acidently deleated it ) reacuring check types on load when the code realoads it will go through and check if any items need to be updated i made it so if it finds a task that needs to be updated it will reafrech and start over so a task can be updated multible times if needed on mark off this will only check one task when you mark off a task this will aslo by pass the alow multi alow multi * this will make it so when a task is duplicated it will either set the old task to 0 or just deleate it * this is marked in the code as the higher of 2 numbers while checking rec type rec types normal this is a type that will not recure and is the only one able to be fully deleated this is marked by a 0 in the code this will be skipped by both reacuring types by due date this to to make a task the will eather run every day or every other day this types has a second variabe called delay witch changes how often the task will show up ie dalay =1 means every day, delay =2 means every other day this is marked as 1 or 2 in the code on the on load check this will check if (due date + delay) < current date if it is it will duplicate the task to due date + delay on mark off for this task will just duplicate teh task to due date + delay on compleate this is used for task that just need to be done betwenn compleations this is marked as 3 in the code becouse it canot have multibles this also have a number called delay this is skiped by the on load check on mark off this task will just duplicate it self to current date + delay on week day this is for tasks that need to be compleated on specifice week days this task has a number that is between 0-127 insted of a delay because it can be converted in to a 7 digit binary string that means reapeate on dayes with 1 and not on 0 this is marked as 4 or 5 on load it will task the due date then search for the next valid date and then will check if the date is before the current date if it is before it will duplicate its self there on mark off works the same just it doent check if the date is before current on month day this is for tasks thatneed to happen on a month by month basses this stores a number from 1-28 witch is the date that it will apere on the month this is marked in the code as 6 or 7 this work in a very simmilar way to the on week day it will take the due date then add one untill it finds a valid date and if it is onload it will check if the current date ia after the new date in the futre i might make it so that if you put 0 in the date it will just run the last day of the month perminat delete each tsk has a button to open the edit menu and you can deteate a task from the edit menu witch will skip all duplicating"}, {"post_id": 54860, "ts": "2026-08-26T01:42:57Z", "hours": 5.1708, "text": "ui- validation i spent like littery 5 hours on ui and validation ui reccuring if you set to reacuring it opens the drop dwon to select what type rec on due select i allow multible select number rec on comp select number rec on week day select i allow multible select week day rec on month day select i allow multible select number validation i havent actually finish the validation fully nut you can not have a blank pryority you can not have a blank list type you can not have ’ or ; in notes or name you can not have a blank name you can not have a invalid date format"}, {"post_id": 54528, "ts": "2026-08-25T15:35:37Z", "hours": 10.2064, "text": "i just be doing stuff ngl i just kinda locked in and forgot to dev log pryoritys you can now set pryoritys the pryoritys are created dynamicly bassed on a sql data base each priority can be collapsed and expanded they will have a number i just havent got to it yet bugges i ran in to a really anoying bug where i had to add the tasks dynamicly inside the pryoritys that are also scaled dynamicly delleate it is simple when a task is closed it doesn’t show up and is droped from the db bugges this delete was causeing like 1000 runtime errors because the tasks are considered separate qml so i cant link to anything out the task and it was like making new backed files and it was dumb date ctime is like really complicated if you have no clue what you are doing i made it so that the task show how many days away the task is due bugges i think i ran it to all the buggees with ctime the most memorable one is when the ctime would just return random times for som reason dynamic tasks i made the notes section scale with the height of the notes in side of it i also added the full date the the task is due in the notes"}, {"post_id": 53189, "ts": "2026-08-23T17:01:43Z", "hours": 9.2897, "text": "i really hope this dont break last dev log so the last devlog like crashed my entire computer or something and now i cant edit it to change the mesasge to i am going to wright all of it here i added an sql data base the data base simply pulls all of the tasks from the .db fle then converts them in to tjhe structs i menaced before then it loads them to the qml page sql sql mage nooooo sence i might just be stuppid but this took like 6 hr aklone to figgure out how to wright to a db file current devlog initializer qml really dont like to run before the c++ howver i needed to just the function that loads all the task affter the qml loads becouse the qml needs to tell the c++ where the tasks need to be so after a long time reaserching and trying things i found that qt has a way to do what i needed and now the code can run the script at the right time add task i made a way to add a task basicly you click a + button then you select al the things you want then it send those to the c++ witch sends them to the sql then it oulls the sql and realoded all the task you might be wondering why doo all of that when it would be easier to just add the task in the qml and to that i say yeah you probly right idk what i am doing"}, {"post_id": 51777, "ts": "2026-08-21T16:48:07Z", "hours": 8.7489, "text": "sql"}, {"post_id": 50050, "ts": "2026-08-19T02:41:09Z", "hours": 8.9317, "text": "we be doing a logic drop down these menus were a pain in the ass there was a bug where the top pixel of the menu was viable contently and it took genuinely 2 hours to fix logic i created a struct that has all the data needed for a task i then took the code for a qml task added it as a widgit or somthing idk what is called then the c++ reads thriugh a list of all the struct task and adds them to the page"}, {"post_id": 48613, "ts": "2026-08-17T02:32:59Z", "hours": 9.1361, "text": "we be doing some ui this is a list i am making for my family to track chores and stuff tab bar on the left this is going to be the place where you can select what page you want to be on so like if you wan to edit what people you have or stuff top filter this is so you can filter the tasks so you can only focus one one you need to do main veiw the tasks each hold * taks name * all the people assined to the task * thwe type * date * notes pryoritys the task list will have a bunch of pryoritys that can open expand and colapes for easier viewing the total will just show how many tasks there are in total timer we have a system where every one has to do 2hr of work each day so i figuerd i would just add that here"}]...
|
Title: list by @flyingfish | Stardance
Devlogs:
w Title: list by @flyingfish | Stardance
Devlogs:
we be doing some ui this is a list i am making for my family to track chores and stuff tab bar on the left this is going to be the place where you can select what page you want to be on so like if you wan to edit what people you have or stuff top filter this is so you can filter the tasks so you can only focus one one you need to do main veiw the tasks each hold * taks name * all the people assined to the task * thwe type * date * notes pryoritys the task list will have a bunch of pryoritys that can open expand and colapes for easier viewing the total will just show how many tasks there are in total timer we have a system where every one has to do 2hr of work each day so i figuerd i would just add that here
we be doing a logic drop down these menus were a pain in the ass there was a bug where the top pixel of the menu was viable contently and it took genuinely 2 hours to fix logic i created a struct that has all the data needed for a task i then took the code for a qml task added it as a widgit or somthing idk what is called then the c++ reads thriugh a list of all the struct task and adds them to the page
sql
i really hope this dont break last dev log so the last devlog like crashed my entire computer or something and now i cant edit it to change the mesasge to i am going to wright all of it here i added an sql data base the data base simply pulls all of the tasks from the .db fle then converts them in to tjhe structs i menaced before then it loads them to the qml page sql sql mage nooooo sence i might just be stuppid but this took like 6 hr aklone to figgure out how to wright to a db file current devlog initializer qml really dont like to run before the c++ howver i needed to just the function that loads all the task affter the qml loads becouse the qml needs to tell the c++ where the tasks need to be so after a long time reaserching and trying things i found that qt has a way to do what i needed and now the code can run the script at the right time add task i made a way to add a task basicly you click a + button then you select al the things you want then it send those to the c++ witch sends them to the sql then it oulls the sql and realoded all the task you might be wondering why doo all of that when it would be easier to just add the task in the qml and to that i say yeah you probly right idk what i am doing
i just be doing stuff ngl i just kinda locked in and forgot to dev log pryoritys you can now set pryoritys the pryoritys are created dynamicly bassed on a sql data base each priority can be collapsed and expanded they will have a number i just havent got to it yet bugges i ran in to a really anoying bug where i had to add the tasks dynamicly inside the pryoritys that are also scaled dynamicly delleate it is simple when a task is closed it doesn’t show up and is droped from the db bugges this delete was causeing like 1000 runtime errors because the tasks are considered separate qml so i cant link to anything out the task and it was like making new backed files and it was dumb date ctime is like really complicated if you have no clue what you are doing i made it so that the task show how many days away the task is due bugges i think i ran it to all the buggees with ctime the most memorable one is when the ctime would just return random times for som reason dynamic tasks i made the notes section scale with the height of the notes in side of it i also added the full date the the task is due in the notes
ui- validation i spent like littery 5 hours on ui and validation ui reccuring if you set to reacuring it opens the drop dwon to select what type rec on due select i allow multible select number rec on comp select number rec on week day select i allow multible select week day rec on month day select i allow multible select number validation i havent actually finish the validation fully nut you can not have a blank pryority you can not have a blank list type you can not have ’ or ; in notes or name you can not have a blank name you can not have a invalid date format
recuring there is a lot (btw i already wrote all of this and acidently deleated it ) reacuring check types on load when the code realoads it will go through and check if any items need to be updated i made it so if it finds a task that needs to be updated it will reafrech and start over so a task can be updated multible times if needed on mark off this will only check one task when you mark off a task this will aslo by pass the alow multi alow multi * this will make it so when a task is duplicated it will either set the old task to 0 or just deleate it * this is marked in the code as the higher of 2 numbers while checking rec type rec types normal this is a type that will not recure and is the only one able to be fully deleated this is marked by a 0 in the code this will be skipped by both reacuring types by due date this to to make a task the will eather run every day or every other day this types has a second variabe called delay witch changes how often the task will show up ie dalay =1 means every day, delay =2 means every other day this is marked as 1 or 2 in the code on the on load check this will check if (due date + delay) < current date if it is it will duplicate the task to due date + delay on mark off for this task will just duplicate teh task to due date + delay on compleate this is used for task that just need to be done betwenn compleations this is marked as 3 in the code becouse it canot have multibles this also have a number called delay this is skiped by the on load check on mark off this task will just duplicate it self to current date + delay on week day this is for tasks that need to be compleated on specifice week days this task has a number that is between 0-127 insted of a delay because it can be converted in to a 7 digit binary string that means reapeate on dayes with 1 and not on 0 this is marked as 4 or 5 on load it will task the due date then search for the next valid date and then will check if the date is before the current date if it is before it will duplicate its self there on mark off works the same just it doent check if the date is before current on month day this is for tasks thatneed to happen on a month by month basses this stores a number from 1-28 witch is the date that it will apere on the month this is marked in the code as 6 or 7 this work in a very simmilar way to the on week day it will take the due date then add one untill it finds a valid date and if it is onload it will check if the current date ia after the new date in the futre i might make it so that if you put 0 in the date it will just run the last day of the month perminat delete each tsk has a button to open the edit menu and you can deteate a task from the edit menu witch will skip all duplicating
really quick little devlog i just added the abiltiy to edit tasks it works by opening the place wheree you create task then sets all the value manualy it was like supper hard to make it so you can edit a task then create a task then go back to editing becouse if a variable was not assined by acident it would all crash
filter the audio on the video is like really bad my main mic stopped working so i taped a web cam to my face :idk_man: core filtering the filrering works by when a task isbeing loaded to the page it will go to a function that will check if it can be used the filter function will check baised of 4 variables stored in the c++ then the qml sends new variables over then i also spent like hours on this but i made it so it wont check any filter if nothing is selected filter by name this is a simple it will just send a string over then check is filter string is contained in the task name filter by person this uses a vector of intigers it will loop through both then if if there is a the same intiger in booth it will show btw peple are stored by index filter by type the type is stored as a vector of strings it does te same and loops through the filter strings and if the task type is equal it will allow the task filter by date this was defenetly the most dificalt one and it is stored av a vector<time_t> there are 2 text boxes the first one is a lower limit the seconed is an uper limit if eather is blank it will not check it if the second one has a date it will only show dates on or before that onee if the second one has a date it will only show tasks after that date if both have dates it will check in betewwn them
jank i have made the ability to add and remove types i will refine later ngl edit: like 10 minits after i posted this i got the code to work where the type updates all the list that already exist
this is my third devlog today 10hr logg to day btw :teird: a fileter bredet edit deleate and add new people
ahhhhhh i did like ui things i am going insane
tons of styleing updates i have spent the past 6 hurs strait styling and validating inputs however it is finally done i just need to do the git hub things and add compatability how ever thats tomarow s problem
i finished all the git action things and all of the last minute changes ie small bug fixes i am now reddy to ship
windows works now i had like 20 commits before all of this
Ships:
i have used a lot of different lists apps but all of them are so coprate and suck so i made my own i have never used sql before so it was a learning experience i also have never used any time library before but this was fun there is a lot of features i want able to add becouse of time and scope reasons so the code is built in a way that it can updated really easly...
|
1793138261.3371391
|
1793224661.3371391
|
|
56766
|
CosmoTrack by @AjoSubarjo | Stardance
|
AjoSubarjo
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-02T02:34:43Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i make a slack bot for tracking iss location and nasa apod, the most challenging part is setting the server and im proud the bot can running 24/7. even though it’s just a simple bot, hope you like it.", "repo": "https://github.com/Ajo-Subarjo/CosmoTrack", "demo": "https://hackclub.enterprise.slack.com/archives/C0P5NE354"}]...
|
[{"post_id": 59991, "ts": "202 [{"post_id": 59991, "ts": "2026-09-02T02:29:03Z", "hours": 0.3869, "text": "create url callback for invite link before shipping it, https://slack.com/oauth/v2/authorize?client_id=11932289980007.11943549521429&scope=app_mentions:read,channels:history,channels:read,chat:write,commands,groups:history,groups:read&redirect_uri=http://cosmo.nest.hackclub.app/slack/callback . now you can click that link to invite my Slack bot to your workspace even though it’s just a simple bot, hope you like it"}, {"post_id": 59328, "ts": "2026-09-01T01:44:39Z", "hours": 1.6414, "text": "changing to js from python"}, {"post_id": 59060, "ts": "2026-08-31T17:29:08Z", "hours": 1.0078, "text": "Adding command to track iss position"}, {"post_id": 58998, "ts": "2026-08-31T16:02:25Z", "hours": 1.2411, "text": "Nasa Api working!"}]...
|
Title: CosmoTrack by @AjoSubarjo | Stardance
Devl Title: CosmoTrack by @AjoSubarjo | Stardance
Devlogs:
Nasa Api working!
Adding command to track iss position
changing to js from python
create url callback for invite link before shipping it, https://slack.com/oauth/v2/authorize?client_id=11932289980007.11943549521429&scope=app_mentions:read,channels:history,channels:read,chat:write,commands,groups:history,groups:read&redirect_uri=http://cosmo.nest.hackclub.app/slack/callback . now you can click that link to invite my Slack bot to your workspace even though it’s just a simple bot, hope you like it
Ships:
i make a slack bot for tracking iss location and nasa apod, the most challenging part is setting the server and im proud the bot can running 24/7. even though it’s just a simple bot, hope you like it....
|
1793141728.3358634
|
1793228128.3358634
|
|
53094
|
Git Archaelogist by @omarelhalaby76 | Stardance
|
omarelhalaby76
|
1
|
9.38
|
76
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-02T00:48:21Z", "hours": 9.0, "multiplier": 8.87, "payout": 76, "blessing": "neutral", "text": "I made git archaeologist, a python CLI app that analyzes Git repository history, including commits, contributors, activity, and inactivity gaps the most challenging part is working with git python library as i have never used it once, packaging it as a proper CLI was also challenging. im proud that i turned an idea into a fully working and functional, installable tool even with JSON outputs, documentation, and a PyPI release. people should know that it has multiple flags to use like –history, –activity, –summary, –timeline, and –json, more info on that here: https://pypi.org/project/git-archaeologist/ the problem solved: Git history contains alot of useful info, but extracting these meaningful insights manually can be very time consuming. git archaeologist automates this analysis fully and presents it in a CLI form 3 major QoL improvments: Quick repository summaries - view important data without manually inspecting git history Activity and inactivity analysis - quickly identify the most active periods and longest gaps in dev 3,. Multiple output formats - use readable CLI output or structured JSON for further processing A clear QoL improvment: Instead of running multiple git commands and manually calculating statistics, users can run just one command to get a complete flawless overview of their repository for instructions of general use please refer to github and for more specified use instructions regarding the tool please refer to PyPI, recommended to read both. HOPE YOU LIKE THE PROJECT!!!!!!!!!!!!!", "repo": "https://github.com/omarelhalaby76-coder/git-archaeologist", "demo": "https://pypi.org/project/git-archaeologist/"}]...
|
[{"post_id": 61138, "ts": "202 [{"post_id": 61138, "ts": "2026-09-03T22:01:27Z", "hours": 0.375, "text": "submitted."}, {"post_id": 59932, "ts": "2026-09-01T23:57:12Z", "hours": 0.7208, "text": "project officially done release in a few minutes-hours"}, {"post_id": 59577, "ts": "2026-09-01T14:05:30Z", "hours": 1.2697, "text": "OFFICIALY FINISHED THE TOOL, added –history, –json, –summary, and –activity flags to make it a very useful tool. NOW MOVING ONTO THE DOCUMENTATION, STAY TUNED… RELEASE TODAY. NEED YOUR SUPPORT!"}, {"post_id": 59075, "ts": "2026-08-31T18:00:02Z", "hours": 1.3236, "text": "Engineered the CLI and added flags for more QoL improvements, added error messages that are readable by ordinary people if the repository is empty. STAY TUNED - TODAY OR TOMORROW V.1.0.0! need your support please!"}, {"post_id": 57416, "ts": "2026-08-29T15:41:26Z", "hours": 0.5011, "text": "ADDED SUMMARY OPTION"}, {"post_id": 57371, "ts": "2026-08-29T14:29:58Z", "hours": 1.0303, "text": "FIRST MAJOR PART DONE! SOON…… STAY TUNED"}, {"post_id": 53446, "ts": "2026-08-24T00:22:54Z", "hours": 2.4286, "text": "After tackling for hours with errors and trying to figure out how to use the git library in python with some help from google and ai i finally coded the main part of the project which is the CLI, and it needed minor tuning then it will be available for all of you to try!!!!"}, {"post_id": 53330, "ts": "2026-08-23T20:10:05Z", "hours": 1.3464, "text": "Just finished the first prototype of my git “archaelogist” project Which gives you every possible information regarding git repositories (will be publishing version 1.0.0 CLI soon)"}]...
|
Title: Git Archaelogist by @omarelhalaby76 | Stard Title: Git Archaelogist by @omarelhalaby76 | Stardance
Devlogs:
Just finished the first prototype of my git “archaelogist” project Which gives you every possible information regarding git repositories (will be publishing version 1.0.0 CLI soon)
After tackling for hours with errors and trying to figure out how to use the git library in python with some help from google and ai i finally coded the main part of the project which is the CLI, and it needed minor tuning then it will be available for all of you to try!!!!
FIRST MAJOR PART DONE! SOON…… STAY TUNED
ADDED SUMMARY OPTION
Engineered the CLI and added flags for more QoL improvements, added error messages that are readable by ordinary people if the repository is empty. STAY TUNED - TODAY OR TOMORROW V.1.0.0! need your support please!
OFFICIALY FINISHED THE TOOL, added –history, –json, –summary, and –activity flags to make it a very useful tool. NOW MOVING ONTO THE DOCUMENTATION, STAY TUNED… RELEASE TODAY. NEED YOUR SUPPORT!
project officially done release in a few minutes-hours
submitted.
Ships:
I made git archaeologist, a python CLI app that analyzes Git repository history, including commits, contributors, activity, and inactivity gaps the most challenging part is working with git python library as i have never used it once, packaging it as a proper CLI was also challenging. im proud that i turned an idea into a fully working and functional, installable tool even with JSON outputs, documentation, and a PyPI release. people should know that it has multiple flags to use like –history, –activity, –summary, –timeline, and –json, more info on that here: https://pypi.org/project/git-archaeologist/ the problem solved: Git history contains alot of useful info, but extracting these meaningful insights manually can be very time consuming. git archaeologist automates this analysis fully and presents it in a CLI form 3 major QoL improvments: Quick repository summaries - view important data without manually inspecting git history Activity and inactivity analysis - quickly identify the most active periods and longest gaps in dev 3,. Multiple output formats - use readable CLI output or structured JSON for further processing A clear QoL improvment: Instead of running multiple git commands and manually calculating statistics, users can run just one command to get a complete flawless overview of their repository for instructions of general use please refer to github and for more specified use instructions regarding the tool please refer to PyPI, recommended to read both. HOPE YOU LIKE THE PROJECT!!!!!!!!!!!!!...
|
1793267549.8072333
|
1793353949.8072333
|
|
57025
|
Personal Site! by @utkarsh_tewari | Stardance
|
utkarsh_tewari
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-02T00:28:12Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a personal site! pretty basic project but i still think its rlly cool", "repo": "https://github.com/UtkarshTewari24/stardance-personal-site", "demo": "https://utkarshtewari24.github.io/stardance-personal-site/#robotics"}]...
|
[{"post_id": 59939, "ts": "202 [{"post_id": 59939, "ts": "2026-09-02T00:21:42Z", "hours": 0.39, "text": "Personal Site Finished! it doesn’t look like its that much because it looks like its from the 2000’s and in the era of vibe-coding anyone can whip up a 3d website in minutes, but i am really proud of it because i coded it myself! (admittedly using templates, google, and a lot of debugging pain) but i still think its a really nice one page site"}]...
|
Title: Personal Site! by @utkarsh_tewari | Stardan Title: Personal Site! by @utkarsh_tewari | Stardance
Devlogs:
Personal Site Finished! it doesn’t look like its that much because it looks like its from the 2000’s and in the era of vibe-coding anyone can whip up a 3d website in minutes, but i am really proud of it because i coded it myself! (admittedly using templates, google, and a lot of debugging pain) but i still think its a really nice one page site
Ships:
I made a personal site! pretty basic project but i still think its rlly cool...
|
1792824488.0254698
|
1793688488.0254698
|
|
37189
|
Elite Four by @Harupi | Stardance
|
Harupi
|
1
|
22.0
|
95
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T23:05:19Z", "hours": 22.0, "multiplier": 4.23, "payout": 95, "blessing": "neutral", "text": "Elite Four Ship Elite Four is a game I made for four of my friends, with one mini-game for each of them. The idea was to do them a gift when I see them for holidays, but I ended up spending much more hours than expected, so the gift will come a bit late. It’s a personal project, the graphism aren’t beautiful and the gameplay is not perfect but I’m happy with what I’ve done. If you want to play it can take only three minutes to finish the game, but it may be a bit difficult (especially Mister C’s mini-game). The most challenging part was to compile the game, as it is made in Python, but I finally made it work both on Linux and Windows. Thank you for your interest, I hope you’ll enjoy the game !", "repo": "https://github.com/Hvrnbi/elite-four", "demo": "https://github.com/Hvrnbi/elite-four/releases"}]...
|
[{"post_id": 59906, "ts": "202 [{"post_id": 59906, "ts": "2026-09-01T22:40:22Z", "hours": 0.9311, "text": "Elite Four devlog 8 - Hi, last devlog befor ship ! For this final devlog, I just wrote the Readme and added a requirements.txt file. This project is really late, but I had fun making it !"}, {"post_id": 59472, "ts": "2026-09-01T10:37:36Z", "hours": 1.1353, "text": "Elite Four devlog 7 - Hello ! I had to do some changes to make executable files work. I switched from python-vlc to pygame mixer for audio because vlc wasn’t working on Windows. I also added the os module to allow the executable to find the pictures files. Now I just have to do the README and I will ship the project !"}, {"post_id": 58255, "ts": "2026-08-30T16:53:37Z", "hours": 5.9961, "text": "Elite Four devlog 6 - Hiiii ! I know it’s been quite a while and I was already late last time, but this project is really coming close to its end ! So I finally made the last game, the Miss W’s one. As I said last time, it’s a rythm game. I’ve taken so long to did it because I didn’t know if I should just record me playing a song on piano, or do it in a DAW (yes, I ended up wanting to do a real song rather than random notes). I decided to do a Breton song and to place the inputs following the dance. It’s not perfect, but I did as best as I could. Most of the time recorded is actually me trying to place the inputs. I also added a simple end screen, I did not really know what to put on it. The last things to do will be the readme, and turn the game into an executable file. See you next time !"}, {"post_id": 47394, "ts": "2026-08-15T09:43:44Z", "hours": 4.1556, "text": "Elite Four devlog 5 - Hello again ! My holidays with my friends are finished, meaning I’m late but hey… which studio never had a game delayed ? During this time, I made the 3rd game, the Mister E’s one. It’s inspired by the “Wanted!” New Super Mario Bros minigame. There are some comedy masks (inspired by TADC) moving on the screen, and the player have to fine the happy one in a limited time. There are four levels, with more masks each time. Maybe I’ll balance it again later if it happens to be too easy. I also add the possibility to start the game by pressing space rather than pressing the button. My next task will be to make last minigame. I’ll try to make something like a rythm game but… without rythm because I don’t think I’ll create a music just for this game, so it will probably use random. See you next time !"}, {"post_id": 34501, "ts": "2026-07-25T08:36:44Z", "hours": 5.2042, "text": "Elite Four devlog 4 - A second game ! I finished the Mister C’s game, where the player have to guess a city from its skyline and the colors on the flag of its country. I also made some functions to handle the continuity of the 2 games. I’m on the road to see my friends, so the gift will probably not be ready at time, but I’ll do my do my best to finish it as soon as I can !"}, {"post_id": 32284, "ts": "2026-07-21T11:06:27Z", "hours": 2.1819, "text": "Elite Four devlog 3 - Just finished the Miss N’s game ! To decide if the player wins or not, I made a hidden score system I tried to balance to be not too hard neither too easy. I also made some general functions I’ll use for all the games. The next step is the Mister C’s game, where the player will have to find a city from its skyline and the colors on the flag of its country."}, {"post_id": 31924, "ts": "2026-07-20T18:30:45Z", "hours": 1.3417, "text": "Elite Four devlog 2 - I finished the visuals for the Miss N’s game. In this game, there will be a crepe recipe and a list of ingredients. The quantity of the ingredients will increase and decrease rapidly, and players will have to press the spacebar to select a quantity. If the selected values are too far from the recipe, the game is over. (I asked her to send me her own recipe)"}, {"post_id": 31173, "ts": "2026-07-19T10:47:50Z", "hours": 1.3825, "text": "Elite Four devlog 1 - I’ll see 4 friends in one week and I want to make them a gift, but I’m in holidays far from home, so I decided to make them a little game, with a minigame for each of them. I choose to make the interface with tkinter cause I already build some apps with it and I don’t have so much time to learn a new gui toolkit. It was quite a long time ago so I had to make some tests to find back how things were working and I just made a basic start menu."}]...
|
Title: Elite Four by @Harupi | Stardance
Devlogs: Title: Elite Four by @Harupi | Stardance
Devlogs:
Elite Four devlog 1 - I’ll see 4 friends in one week and I want to make them a gift, but I’m in holidays far from home, so I decided to make them a little game, with a minigame for each of them. I choose to make the interface with tkinter cause I already build some apps with it and I don’t have so much time to learn a new gui toolkit. It was quite a long time ago so I had to make some tests to find back how things were working and I just made a basic start menu.
Elite Four devlog 2 - I finished the visuals for the Miss N’s game. In this game, there will be a crepe recipe and a list of ingredients. The quantity of the ingredients will increase and decrease rapidly, and players will have to press the spacebar to select a quantity. If the selected values are too far from the recipe, the game is over. (I asked her to send me her own recipe)
Elite Four devlog 3 - Just finished the Miss N’s game ! To decide if the player wins or not, I made a hidden score system I tried to balance to be not too hard neither too easy. I also made some general functions I’ll use for all the games. The next step is the Mister C’s game, where the player will have to find a city from its skyline and the colors on the flag of its country.
Elite Four devlog 4 - A second game ! I finished the Mister C’s game, where the player have to guess a city from its skyline and the colors on the flag of its country. I also made some functions to handle the continuity of the 2 games. I’m on the road to see my friends, so the gift will probably not be ready at time, but I’ll do my do my best to finish it as soon as I can !
Elite Four devlog 5 - Hello again ! My holidays with my friends are finished, meaning I’m late but hey… which studio never had a game delayed ? During this time, I made the 3rd game, the Mister E’s one. It’s inspired by the “Wanted!” New Super Mario Bros minigame. There are some comedy masks (inspired by TADC) moving on the screen, and the player have to fine the happy one in a limited time. There are four levels, with more masks each time. Maybe I’ll balance it again later if it happens to be too easy. I also add the possibility to start the game by pressing space rather than pressing the button. My next task will be to make last minigame. I’ll try to make something like a rythm game but… without rythm because I don’t think I’ll create a music just for this game, so it will probably use random. See you next time !
Elite Four devlog 6 - Hiiii ! I know it’s been quite a while and I was already late last time, but this project is really coming close to its end ! So I finally made the last game, the Miss W’s one. As I said last time, it’s a rythm game. I’ve taken so long to did it because I didn’t know if I should just record me playing a song on piano, or do it in a DAW (yes, I ended up wanting to do a real song rather than random notes). I decided to do a Breton song and to place the inputs following the dance. It’s not perfect, but I did as best as I could. Most of the time recorded is actually me trying to place the inputs. I also added a simple end screen, I did not really know what to put on it. The last things to do will be the readme, and turn the game into an executable file. See you next time !
Elite Four devlog 7 - Hello ! I had to do some changes to make executable files work. I switched from python-vlc to pygame mixer for audio because vlc wasn’t working on Windows. I also added the os module to allow the executable to find the pictures files. Now I just have to do the README and I will ship the project !
Elite Four devlog 8 - Hi, last devlog befor ship ! For this final devlog, I just wrote the Readme and added a requirements.txt file. This project is really late, but I had fun making it !
Ships:
Elite Four Ship Elite Four is a game I made for four of my friends, with one mini-game for each of them. The idea was to do them a gift when I see them for holidays, but I ended up spending much more hours than expected, so the gift will come a bit late. It’s a personal project, the graphism aren’t beautiful and the gameplay is not perfect but I’m happy with what I’ve done. If you want to play it can take only three minutes to finish the game, but it may be a bit difficult (especially Mister C’s mini-game). The most challenging part was to compile the game, as it is made in Python, but I finally made it work both on Linux and Windows. Thank you for your interest, I hope you’ll enjoy the game !...
|
1793306870.7275767
|
1793393270.7275767
|
|
54323
|
FILL THE CANVAS! by @LeaHCim | Stardance
|
LeaHCim
|
1
|
11.19
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T21:31:09Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a canvas painting game. I dont know if thats a thing, but thats what I made. You have different tools to paint your canvas asap! Also there is some WarioWare game elements in there. This is only a demo, but I plan to expand in the 2nd Challenge. I am proud of myself for only accidentally deleting everything once. Thanks git!", "repo": "https://github.com/MichaelEliasHirt/WarioPainter", "demo": "https://sir-lordmike.itch.io/fillthecanvas"}]...
|
[{"post_id": 66190, "ts": "202 [{"post_id": 66190, "ts": "2026-09-11T21:07:31Z", "hours": 1.185, "text": "Somehow I added another game in just over an hour. Props to myself! Anyway its now ready to ship. I had to two “games” before but I didn’t really describe it so its fine. Now there is a third for prosperity :D"}, {"post_id": 59872, "ts": "2026-09-01T21:11:40Z", "hours": 3.7164, "text": "The game is almost done by now. No lets be honest I will only publish a demo in the WarioWareGame 1 Challenge. There is just not enough time. I am already so much over the hours…"}, {"post_id": 55245, "ts": "2026-08-26T22:07:32Z", "hours": 2.0103, "text": "No I did not just do the stamp. Actually made everything from the last devlog again. Thank you my crappy git skills I managed to delete every ounce of code. Well now its prettier and tbh better. So.."}, {"post_id": 54789, "ts": "2026-08-25T22:06:05Z", "hours": 4.3786, "text": "So the game will be about painting. Nothing pretty, but FAST. The different minigames will be different ways of filling the screen. So firstly I made this one: The spray."}]...
|
Title: FILL THE CANVAS! by @LeaHCim | Stardance
D Title: FILL THE CANVAS! by @LeaHCim | Stardance
Devlogs:
So the game will be about painting. Nothing pretty, but FAST. The different minigames will be different ways of filling the screen. So firstly I made this one: The spray.
No I did not just do the stamp. Actually made everything from the last devlog again. Thank you my crappy git skills I managed to delete every ounce of code. Well now its prettier and tbh better. So..
The game is almost done by now. No lets be honest I will only publish a demo in the WarioWareGame 1 Challenge. There is just not enough time. I am already so much over the hours…
Somehow I added another game in just over an hour. Props to myself! Anyway its now ready to ship. I had to two “games” before but I didn’t really describe it so its fine. Now there is a third for prosperity :D
Ships:
I made a canvas painting game. I dont know if thats a thing, but thats what I made. You have different tools to paint your canvas asap! Also there is some WarioWare game elements in there. This is only a demo, but I plan to expand in the 2nd Challenge. I am proud of myself for only accidentally deleting everything once. Thanks git!...
|
1793220635.2996943
|
1793307035.2996943
|
|
55843
|
EyeDash by @reaue | Stardance
|
reaue
|
1
|
17.0
|
221
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T21:20:49Z", "hours": 17.0, "multiplier": 13.39, "payout": 221, "blessing": "neutral", "text": "I make a webcam-based blink control interface. It tracks eye landmarks with MediaPipe’s FaceLandmarker, computes Eye Aspect Ratio to detect blinks and classifies them : single left/right eye blink vs double blinks from both eyes. The initial setup working was rougher than expected, Haar cascade wasn’t strong enough. Switching to MediaPipe fixed the detection accuracy. My only regret was I failed to create a gaze tracking to navigate like with a mouse but with your eyes. I’m proud of the design. It’s not easy with pygame, but I’m very happy especially for moving stars. The game is totaly playabe, you need to follow the instruction on the Github. There is a Eye Aspect Ratio treshold which can be calculate for everyone, so try this !", "repo": "https://github.com/reaue/eyeControl", "demo": "https://github.com/reaue/eyeControl/releases/tag/v1.0.0"}]...
|
[{"post_id": 59865, "ts": "202 [{"post_id": 59865, "ts": "2026-09-01T20:53:36Z", "hours": 0.6133, "text": "Devlog Ship. I sent time recording the video that serves as a demo, wich can be found on Github page."}, {"post_id": 59592, "ts": "2026-09-01T14:34:17Z", "hours": 4.3694, "text": "Devlog 5 - The final ! I added some new features : procedural obstacles (I tried to perfect the game design to be good enough to avoid impassable obstacles), design on the background and the player (it’s spinning now)"}, {"post_id": 59241, "ts": "2026-08-31T22:26:47Z", "hours": 3.3406, "text": "Devlog 4 - I worked on the game part of my project. I simplified the jumping mechanic. Now, you only need to blink once with either eye to jump, whereas before, you needed two blinks. There were too many false positives, so I decided to make the input simpler and more reliable. I hope to finish implementing procedural obstacles and some visual effects tomorrow, such as particles and a parallax effect in the background."}, {"post_id": 59006, "ts": "2026-08-31T16:13:40Z", "hours": 3.9397, "text": "Devlog 3 - Some UI design today ! I used Figma AI to help me visualize the design of my eye-controlled game. I’m very happy with the result! I still need to develop the game itself, though. I was thinking of making a game inspired by Geometry Dash, hence the name EyeDash. The controls would be simple: a double blink with one eye would make the character jump."}, {"post_id": 58743, "ts": "2026-08-31T09:27:14Z", "hours": 3.0444, "text": "Devlog 2 After hours and hours of implementing features for gaze tracking, I realize that it is not enough stable. 3 hours of dev wasted 😭. I think I will reorient the project to a game controlled by eyes blinking. If you have any ideas I’m taker. You can find the version of not stable eye tracking on my github, it’s the file eyeControl/gaze_tracking_attempt.py."}, {"post_id": 58161, "ts": "2026-08-30T14:58:48Z", "hours": 1.2019, "text": "Devlog 1 I’m working on a webcam-based blink detector, which will allow you to control your PC with your eyes only."}]...
|
Title: EyeDash by @reaue | Stardance
Devlogs:
Dev Title: EyeDash by @reaue | Stardance
Devlogs:
Devlog 1 I’m working on a webcam-based blink detector, which will allow you to control your PC with your eyes only.
Devlog 2 After hours and hours of implementing features for gaze tracking, I realize that it is not enough stable. 3 hours of dev wasted 😭. I think I will reorient the project to a game controlled by eyes blinking. If you have any ideas I’m taker. You can find the version of not stable eye tracking on my github, it’s the file eyeControl/gaze_tracking_attempt.py.
Devlog 3 - Some UI design today ! I used Figma AI to help me visualize the design of my eye-controlled game. I’m very happy with the result! I still need to develop the game itself, though. I was thinking of making a game inspired by Geometry Dash, hence the name EyeDash. The controls would be simple: a double blink with one eye would make the character jump.
Devlog 4 - I worked on the game part of my project. I simplified the jumping mechanic. Now, you only need to blink once with either eye to jump, whereas before, you needed two blinks. There were too many false positives, so I decided to make the input simpler and more reliable. I hope to finish implementing procedural obstacles and some visual effects tomorrow, such as particles and a parallax effect in the background.
Devlog 5 - The final ! I added some new features : procedural obstacles (I tried to perfect the game design to be good enough to avoid impassable obstacles), design on the background and the player (it’s spinning now)
Devlog Ship. I sent time recording the video that serves as a demo, wich can be found on Github page.
Ships:
I make a webcam-based blink control interface. It tracks eye landmarks with MediaPipe’s FaceLandmarker, computes Eye Aspect Ratio to detect blinks and classifies them : single left/right eye blink vs double blinks from both eyes. The initial setup working was rougher than expected, Haar cascade wasn’t strong enough. Switching to MediaPipe fixed the detection accuracy. My only regret was I failed to create a gaze tracking to navigate like with a mouse but with your eyes. I’m proud of the design. It’s not easy with pygame, but I’m very happy especially for moving stars. The game is totaly playabe, you need to follow the instruction on the Github. There is a Eye Aspect Ratio treshold which can be calculate for everyone, so try this !...
|
1793260177.904904
|
1793346577.904904
|
|
51891
|
Sprachkasse by @lukas_56376 | Stardance
|
lukas_56376
|
2
|
8.0
|
24
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T20:58:17Z", "hours": 4.0, "multiplier": 2.4, "payout": 11, "blessing": "neutral", "text": "SHIP 2!!! SprachKasse is an interactive learning app that teaches German for retail work to Polish-speaking learners. Users progress through a structured lesson path from level A2 to B1, working through practical situations like greeting customers and checkout vocabulary. The app includes bilingual hints, a searchable vocabulary trainer, and an XP-based progress system with daily streaks to keep learners motivated. It’s built as a static web app and hosted on GitHub Pages.", "repo": "https://github.com/Lukas-56376/Sprachkasse", "demo": "https://lukas-56376.github.io/Sprachkasse/"}, {"ship_num": 2, "ts": "2026-08-20T19:13:34Z", "hours": 4.0, "multiplier": 6.73, "payout": 13, "blessing": "neutral", "text": "SprachKasse is an interactive learning app that teaches German for retail work to Polish-speaking learners. Users progress through a structured lesson path from level A2 to B1, working through practical situations like greeting customers and checkout vocabulary. The app includes bilingual hints, a searchable vocabulary trainer, and an XP-based progress system with daily streaks to keep learners motivated. It’s built as a static web app and hosted on GitHub Pages. Big shoutout to my Brother for helping with the java script! Love you bro ❤️", "repo": "https://github.com/Lukas-56376/Sprachkasse", "demo": "https://lukas-56376.github.io/Sprachkasse/"}]...
|
[{"post_id": 54285, "ts": "202 [{"post_id": 54285, "ts": "2026-08-25T06:56:21Z", "hours": 0.4928, "text": "The Redesign and shipment has been done, here is the new Website!"}, {"post_id": 53971, "ts": "2026-08-24T17:58:26Z", "hours": 1.4889, "text": "Currently redoing the css, with more fun elemnts"}, {"post_id": 51874, "ts": "2026-08-21T19:13:52Z", "hours": 2.0181, "text": "Working on a version, that hopefully gets accepted, almost done!"}, {"post_id": 51312, "ts": "2026-08-20T21:54:27Z", "hours": 0.4375, "text": "CSS and Mobile version updated"}, {"post_id": 51220, "ts": "2026-08-20T19:10:42Z", "hours": 1.6117, "text": "I am almost, done now only Bug searches and fixes!"}, {"post_id": 51152, "ts": "2026-08-20T17:21:50Z", "hours": 2.1239, "text": "My first 2 hours on the new Project and here is a sneak peek! PS: It is in German"}]...
|
Title: Sprachkasse by @lukas_56376 | Stardance
De Title: Sprachkasse by @lukas_56376 | Stardance
Devlogs:
My first 2 hours on the new Project and here is a sneak peek! PS: It is in German
I am almost, done now only Bug searches and fixes!
CSS and Mobile version updated
Working on a version, that hopefully gets accepted, almost done!
Currently redoing the css, with more fun elemnts
The Redesign and shipment has been done, here is the new Website!
Ships:
SprachKasse is an interactive learning app that teaches German for retail work to Polish-speaking learners. Users progress through a structured lesson path from level A2 to B1, working through practical situations like greeting customers and checkout vocabulary. The app includes bilingual hints, a searchable vocabulary trainer, and an XP-based progress system with daily streaks to keep learners motivated. It’s built as a static web app and hosted on GitHub Pages. Big shoutout to my Brother for helping with the java script! Love you bro ❤️
SHIP 2!!! SprachKasse is an interactive learning app that teaches German for retail work to Polish-speaking learners. Users progress through a structured lesson path from level A2 to B1, working through practical situations like greeting customers and checkout vocabulary. The app includes bilingual hints, a searchable vocabulary trainer, and an XP-based progress system with daily streaks to keep learners motivated. It’s built as a static web app and hosted on GitHub Pages....
|
1792878646.9081225
|
1793742646.9081225
|
|
56482
|
EncoderStar by @AuraMonster | Stardance
|
AuraMonster
|
1
|
3.98
|
6
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T20:25:59Z", "hours": 3.0, "multiplier": 3.56, "payout": 6, "blessing": "neutral", "text": "I made a website that can Encode, Decode, Cipher, and Decipher messages using different systems (Ex: Caesar’s, Substitution, etc.). It also teaches you how the different systems work.", "repo": "https://github.com/mdmutahhar24-pixel/EncoderStar", "demo": "https://encodestar.mutahharsultan.hackclub.app/"}]...
|
[{"post_id": 61225, "ts": "202 [{"post_id": 61225, "ts": "2026-09-04T01:45:01Z", "hours": 0.9769, "text": "Third and ACTUAL final Devlog for EncoderStar Last time I said that it was the last devlog, but due to deployment errors, this devlog exists!"}, {"post_id": 59832, "ts": "2026-09-01T20:10:19Z", "hours": 0.7903, "text": "Second and Final Devlog of EncoderStar More info: Why are you ending this early when it has so much potential (Did somebody say Potential?)? My reasons: Overall I am just bored of this. Too much math (I hate math) I have another project in mind New Features: Guide Finished ASCII encoding added (new encode section) ASCII decoding added (new decode section) renamed encoding to ciphers renamed decoding to deciphers added encoding and decoding for things like ASCII Will be shipped shortly!"}, {"post_id": 59367, "ts": "2026-09-01T03:57:45Z", "hours": 2.5406, "text": "First Devlog for EncoderStar What is EncoderStar? EncoderStar is a website made in python that ciphers and deciphers using many ciphers (Caesar’s, Substitution, etc.) New Features: Added Homepage Added Encoder page with Caesar’s, Substitution and Atbash Added Decoder page with Caesar’s, Substitution and Atbash Work in progress: Guide Future Features (Subject to change): More ciphers"}]...
|
Title: EncoderStar by @AuraMonster | Stardance
De Title: EncoderStar by @AuraMonster | Stardance
Devlogs:
First Devlog for EncoderStar What is EncoderStar? EncoderStar is a website made in python that ciphers and deciphers using many ciphers (Caesar’s, Substitution, etc.) New Features: Added Homepage Added Encoder page with Caesar’s, Substitution and Atbash Added Decoder page with Caesar’s, Substitution and Atbash Work in progress: Guide Future Features (Subject to change): More ciphers
Second and Final Devlog of EncoderStar More info: Why are you ending this early when it has so much potential (Did somebody say Potential?)? My reasons: Overall I am just bored of this. Too much math (I hate math) I have another project in mind New Features: Guide Finished ASCII encoding added (new encode section) ASCII decoding added (new decode section) renamed encoding to ciphers renamed decoding to deciphers added encoding and decoding for things like ASCII Will be shipped shortly!
Third and ACTUAL final Devlog for EncoderStar Last time I said that it was the last devlog, but due to deployment errors, this devlog exists!
Ships:
I made a website that can Encode, Decode, Cipher, and Decipher messages using different systems (Ex: Caesar’s, Substitution, etc.). It also teaches you how the different systems work....
|
1793310508.8861578
|
1793396908.8861578
|
|
55560
|
Pong by @Max_ | Stardance
|
Max_
|
1
|
5.0
|
24
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T20:13:49Z", "hours": 5.0, "multiplier": 4.43, "payout": 24, "blessing": "neutral", "text": "Pong This is classical pong made with HTML, CSS and JS. I made the screen 32x32 pixels(they’re actually divs). I implemented PvP mode and PvB too(PvP online maybe will come out later).\(゚ー゚\) Features Player versus player mode Player versus bot mode", "repo": "https://github.com/OgArkad/Pong", "demo": "https://pong-gamma-pearl.vercel.app/"}]...
|
[{"post_id": 59677, "ts": "202 [{"post_id": 59677, "ts": "2026-09-01T16:30:07Z", "hours": 5.4353, "text": "Pong This is classical pong made with HTML, CSS and JS. I made the screen 32x32 pixels(they’re actually divs). I implemented PvP mode and PvB too(PvP online maybe will come out later).\(゚ー゚\)"}]...
|
Title: Pong by @Max_ | Stardance
Devlogs:
Pong Th Title: Pong by @Max_ | Stardance
Devlogs:
Pong This is classical pong made with HTML, CSS and JS. I made the screen 32x32 pixels(they’re actually divs). I implemented PvP mode and PvB too(PvP online maybe will come out later).\(゚ー゚\)
Ships:
Pong This is classical pong made with HTML, CSS and JS. I made the screen 32x32 pixels(they’re actually divs). I implemented PvP mode and PvB too(PvP online maybe will come out later).\(゚ー゚\) Features Player versus player mode Player versus bot mode...
|
1793130680.2491221
|
1793217080.2491221
|
|
57068
|
Minecraft Modpack Site by @spheroidon | Stardance
|
spheroidon
|
2
|
5.23
|
8
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T20:11:23Z", "hours": 2.0, "multiplier": 2.95, "payout": 5, "blessing": "neutral", "text": "Ship 2 - customized the site to be focused on my WIP modpack, added various responsibility improvements, and implemented a lightbox.", "repo": "https://github.com/spheroidon/personal-site", "demo": "https://spheroidon.github.io/personal-site/"}, {"ship_num": 2, "ts": "2026-09-01T13:20:52Z", "hours": 2.0, "multiplier": 1.55, "payout": 3, "blessing": "neutral", "text": "Made a little personal site with placeholder stuff to refresh my HTML and CSS knowledge! It’s currently a bunch of placeholder links and images but it’s easily customizable.", "repo": "https://github.com/spheroidon/personal-site", "demo": "https://spheroidon.github.io/personal-site/"}]...
|
[{"post_id": 60944, "ts": "202 [{"post_id": 60944, "ts": "2026-09-03T16:53:44Z", "hours": 0.3194, "text": "Added more changelogs from the modpack’s internal docs to the site. I plan to work on Markdown functionality for the changelogs next!"}, {"post_id": 60740, "ts": "2026-09-03T09:39:16Z", "hours": 0.3622, "text": "Added initial changelog functionality. It loads changelogs from an array, where each changelog is a dict with the content (multiline string), title (string), and date (Date object)."}, {"post_id": 60138, "ts": "2026-09-02T09:59:35Z", "hours": 0.5511, "text": "Added initial implementation of multiple-section functionality, made images lazyload via loading=“lazy”, and made a few other miscellanious improvements (customized text selection color, added a lightbox border for consistency, probably some more stuff)."}, {"post_id": 59812, "ts": "2026-09-01T19:26:15Z", "hours": 0.7383, "text": "Added a list of featured mods to the lightbox, to see what mod is adding the showcased feature! The list also includes the relevant CurseForge links."}, {"post_id": 59791, "ts": "2026-09-01T18:41:26Z", "hours": 0.9669, "text": "Added a lightbox and replaced placeholders with content related to my W.I.P. Minecraft modpack!"}, {"post_id": 59551, "ts": "2026-09-01T13:12:49Z", "hours": 0.3642, "text": "Made navbar links also generate dynamically from a dict, and added a favicon"}, {"post_id": 59539, "ts": "2026-09-01T12:47:35Z", "hours": 0.8292, "text": "Added a dynamically generated image gallery using JS. Currently it’s placeholder images of fish and other critters!"}, {"post_id": 59517, "ts": "2026-09-01T11:56:31Z", "hours": 0.6456, "text": "Setup a basic header with some css and example links!"}]...
|
Title: Minecraft Modpack Site by @spheroidon | Sta Title: Minecraft Modpack Site by @spheroidon | Stardance
Devlogs:
Setup a basic header with some css and example links!
Added a dynamically generated image gallery using JS. Currently it’s placeholder images of fish and other critters!
Made navbar links also generate dynamically from a dict, and added a favicon
Added a lightbox and replaced placeholders with content related to my W.I.P. Minecraft modpack!
Added a list of featured mods to the lightbox, to see what mod is adding the showcased feature! The list also includes the relevant CurseForge links.
Added initial implementation of multiple-section functionality, made images lazyload via loading=“lazy”, and made a few other miscellanious improvements (customized text selection color, added a lightbox border for consistency, probably some more stuff).
Added initial changelog functionality. It loads changelogs from an array, where each changelog is a dict with the content (multiline string), title (string), and date (Date object).
Added more changelogs from the modpack’s internal docs to the site. I plan to work on Markdown functionality for the changelogs next!
Ships:
Made a little personal site with placeholder stuff to refresh my HTML and CSS knowledge! It’s currently a bunch of placeholder links and images but it’s easily customizable.
Ship 2 - customized the site to be focused on my WIP modpack, added various responsibility improvements, and implemented a lightbox....
|
1793252924.9904535
|
1793339324.9904535
|
|
57099
|
My personal site by @OneShot | Stardance
|
OneShot
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T19:57:56Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Yea im shipping my personal website i hope you have a grate time exploring it :0", "repo": "https://github.com/Zlati839/Personal-Website", "demo": "https://zlati839.github.io/Personal-Website/"}]...
|
[{"post_id": 59823, "ts": "202 [{"post_id": 59823, "ts": "2026-09-01T19:56:13Z", "hours": 5.3939, "text": "Im glad to say ive made my own personal website , also you can interact with the little decor placed around :D"}]...
|
Title: My personal site by @OneShot | Stardance
D Title: My personal site by @OneShot | Stardance
Devlogs:
Im glad to say ive made my own personal website , also you can interact with the little decor placed around :D
Ships:
Yea im shipping my personal website i hope you have a grate time exploring it :0...
|
1793252943.582098
|
1793339343.582098
|
|
57267
|
Perfect-day by @HappyMinion | Stardance
|
HappyMinion
|
1
|
6.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T19:53:27Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Perfect-day: Movies I made a interactive web page which has movie recommendations across four popular genres. Users can browse through the movie posters , view the title of the movie on hover, and click any poster to reveal a summary on what the movie is about. Features -The header which contains buttons to navigate easily and reach a genre faster. -The movie posters which show the title of the movie on hover. -Clickable movie posters which display a quick summary when a user clicks on it. Files -index.html which is the main HTML page. -style.css which is the CSS file for styling. -.jpg, .jpeg for the image files. How to run 1.Download all the files in one folder. 2.Open the index.html file in a suitable browser.", "repo": "https://github.com/saniakorai2-max/Perfect-day", "demo": "https://saniakorai2-max.github.io/Perfect-day/"}]...
|
[{"post_id": 59819, "ts": "202 [{"post_id": 59819, "ts": "2026-09-01T19:50:01Z", "hours": 5.8292, "text": "Devlog : “My Perfect Day: Movies” Project Overview My Perfect Day: Movies is an interactive web page that shows my favorite movies across four genres: Marvel, Classics, Dystopian, and Animated that i would recommend to others so they can have a perfect day. It is a clean, modern UI that feels smooth and easy to navigate, IIt has interactive posters and movie detail cards! Key Features Glass Header: Styled using CSS backdrop-filter to create a glassy effect. Scrolling Posters: Each genre has scrollbars for easy browsing. Hover Overlays: Poster titles show up whenever you hover over a movie. Interactive Summary Cards: Clicking on any poster toggles an info card directly beneath the row to display a quick summary of the movie. Languages Used HTML5: Semantic structure and container layouts. CSS3: Flexbox, glassmorphism filters, transitions, and custom scrollbar styling. JavaScript (Vanilla): Event listeners and DOM class toggling. Bug Fixes Poster Clicks Not Registering The overlay title box sat on top of the image element, due to which it would capture the mouse clicks instead of the poster. Solution: Added “pointer-events: none;” to the title class in CSS so clicks pass straight through to the image."}]...
|
Title: Perfect-day by @HappyMinion | Stardance
De Title: Perfect-day by @HappyMinion | Stardance
Devlogs:
Devlog : “My Perfect Day: Movies” Project Overview My Perfect Day: Movies is an interactive web page that shows my favorite movies across four genres: Marvel, Classics, Dystopian, and Animated that i would recommend to others so they can have a perfect day. It is a clean, modern UI that feels smooth and easy to navigate, IIt has interactive posters and movie detail cards! Key Features Glass Header: Styled using CSS backdrop-filter to create a glassy effect. Scrolling Posters: Each genre has scrollbars for easy browsing. Hover Overlays: Poster titles show up whenever you hover over a movie. Interactive Summary Cards: Clicking on any poster toggles an info card directly beneath the row to display a quick summary of the movie. Languages Used HTML5: Semantic structure and container layouts. CSS3: Flexbox, glassmorphism filters, transitions, and custom scrollbar styling. JavaScript (Vanilla): Event listeners and DOM class toggling. Bug Fixes Poster Clicks Not Registering The overlay title box sat on top of the image element, due to which it would capture the mouse clicks instead of the poster. Solution: Added “pointer-events: none;” to the title class in CSS so clicks pass straight through to the image.
Ships:
Perfect-day: Movies I made a interactive web page which has movie recommendations across four popular genres. Users can browse through the movie posters , view the title of the movie on hover, and click any poster to reveal a summary on what the movie is about. Features -The header which contains buttons to navigate easily and reach a genre faster. -The movie posters which show the title of the movie on hover. -Clickable movie posters which display a quick summary when a user clicks on it. Files -index.html which is the main HTML page. -style.css which is the CSS file for styling. -.jpg, .jpeg for the image files. How to run 1.Download all the files in one folder. 2.Open the index.html file in a suitable browser....
|
1793267385.8561416
|
1793353785.8561416
|
|
54380
|
Space Simulator by @Coverst_dev | Stardance
|
Coverst_dev
|
1
|
19.69
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T19:11:08Z", "hours": 13.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made an interactive pulsar simulation with 3D magnetic field lines, rotating polar beams, adjustable rotation speed/tilt, camera controls and a few live values. The most annoying part was probably getting the field lines, depth and render order to stop looking weird together, but I got it into a state I’m actually happy with. The physics side is handled through my C++ backend and the rendering is done in Python/Pygame. For testing: arrow keys rotate the camera, scroll zooms, A/D changes rotation speed, W/S changes the magnetic tilt and Space pauses it. I also packaged it into a Windows .exe so you can just download it and try it This is the github release, the website is just for documentation and research purposes, a fancy README https://github.com/Coverst-ux/space-sim/releases/tag/v1.0.0", "repo": "https://github.com/Coverst-ux/space-sim", "demo": "https://coverst-ux.github.io/space-sim-site/"}]...
|
[{"post_id": 76236, "ts": "202 [{"post_id": 76236, "ts": "2026-10-02T19:53:22Z", "hours": 1.0089, "text": "README rework I did a MAJOR readme overhaul by restructuring it into like one continuous story while also making it sound less like a research paper (although the research paper vibe was my goal at the start) Before, my readme was messy with no structure and just mixed into each other My cleanup was mainly just reordering it and changing a few paragraphs to sound less research-y and more fun/story vibe Most of the info was already previously there from the first version of the readme so this session was just about presentation"}, {"post_id": 70686, "ts": "2026-09-19T16:21:18Z", "hours": 2.6603, "text": "Energy loss Normally, a pulsar loses energy when the magnetic field rotates. My simulation previously didn’t account for that. So that brought me to the idea of making the pulsar more realistic by implementing an energy loss system that causes the pulsar to slow down over time New physics that was implemented Magnetic field radiation power: Calculated how much rotational energy the pulsar loses Spin down: Using that energy loss to calculate how quickly the velocity decreases Sneak peek into the actual physics behind this : P = -I × Ω × Ω̇ Where: P is the power radiated by the pulsar, measured in watts. I is the pulsar’s moment of inertia, which describes how difficult it is to change its rotation. Ω is its angular velocity, measured in radians per second. Ω̇ is the rate of change of angular velocity, measured in radians per second squared. The negative sign is for the loss of rotational energy. Since the pulsar is slowing down, its spin down rate is negative, while the pulsar’s radiated power is positive Lastly, connecting everything I updated my pybind11 bindings to integrate the new C++ code into my pygame visualization. I also made sure that rotation speed doesn’t cause the magnetic axis to jump and that everything works as intended https://github.com/Coverst-ux/Space-sim-Cpp-Port"}, {"post_id": 68154, "ts": "2026-09-14T16:36:48Z", "hours": 3.0175, "text": "I spent most of my time today polishing up my README for the stardance so I can actually reship the project I really just broke down the details of the stardance/pulsar work with a little more explanation so the reader knows what’s going on such as rotation period, light cylinder, magnetic dipole field, etc… Finally, I updated the demo website on my github to have the github icon actually point to the source code instead of just pointing to my general github profile Probably not my most productive/impressive session but definitely was needed Any feedback or suggestions is greatly appreciated!"}, {"post_id": 59804, "ts": "2026-09-01T19:06:45Z", "hours": 0.9639, "text": "I just finished the final touches on the pulsar visualization. I changed the beams to be more cone-like for visualization purposes, added control panel functionality and packaged it all into a .exe for you guys to try I’ll try to create alternative for the goated non-Windows users https://github.com/Coverst-ux/space-sim/releases/tag/v1.0.0 <- .exe file https://github.com/Coverst-ux/space-sim <- github repo/readme"}, {"post_id": 59062, "ts": "2026-08-31T17:33:54Z", "hours": 2.1881, "text": "I thought the hardest part would be the pulsar physics, turns out it was the rendering that was a genuine pain I reworked the field lines into 3D instead of the ugly previous 2D, added rotation, added a beam that you see in pulsars, and basic camera controls. I’m quite happy with how its all coming together."}, {"post_id": 57528, "ts": "2026-08-29T18:16:30Z", "hours": 1.4236, "text": "Devlog 3 The pulsar is finally starting to look 3D Today I connected it to the camera system from the rest of the simulator, so I can rotate and zoom around it properly now. I also added a 3D background starfield, which surprisingly helped a lot because you can actually between the front and the back of the simulation The magnetic field lines were also moved from 2D plane into a 3D plane around the neutron star. I added some glow to them and worked on a feature where the lines that go behind it just disappear instead of awkwardly just being in the background There were a couple annoying bugs with lines randomly disappearing and even entering the star itself, but those are fixed now It still has a LONG way to go visually, but I think it’s starting to resemble the kind of pulsar simulation I had in mind"}, {"post_id": 57147, "ts": "2026-08-29T07:51:10Z", "hours": 2.9142, "text": "Devlog 2 I finally got the rendering to an (Okay?) place. Most of my work was on the physics side of the pulsar. Which isn’t exactly the “most exciting” per se. So I decided to get the visualization and get it looking like an actual simulation instead of a bunch of nerdy physics. The big blue ball in the middle is the neutron star ofc. And those lines are the magnetic field lines that surround the star. Tracing them was quite the pain. I had to trace the magnetic field from all the different points around the star. Then, figure out how to like follow it in both directions and have a copy of each field line on each side as you can see. It is DEFINITELY not staying like this. I wanna get it up to par with the rest of my work which is in the README (go check it out 😊). Although, not having models/assets is a big obstacle so I’m forced to draw everything with Pygame. Currently, the physics is simplified so I can get a minimum viable product of the simulation. So now I’m stuck between two choices: A) Get the simulator to look significantly better or B) Unsimplify the physics and make it technically impressive I’ll go start figuring out that one next"}, {"post_id": 56261, "ts": "2026-08-27T23:15:52Z", "hours": 5.8097, "text": "Researched and wrote notes for the simplified pulsar physics. Implemented the 3D magnetic field calculation. Tested the logic, scaling, and guards for invalid behavior. Compiled the pulsar module and confirmed that all tests passed. My next course of action would probably be connecting the C++ physics engine to python for visualization."}]...
|
Title: Space Simulator by @Coverst_dev | Stardance Title: Space Simulator by @Coverst_dev | Stardance
Devlogs:
Researched and wrote notes for the simplified pulsar physics. Implemented the 3D magnetic field calculation. Tested the logic, scaling, and guards for invalid behavior. Compiled the pulsar module and confirmed that all tests passed. My next course of action would probably be connecting the C++ physics engine to python for visualization.
Devlog 2 I finally got the rendering to an (Okay?) place. Most of my work was on the physics side of the pulsar. Which isn’t exactly the “most exciting” per se. So I decided to get the visualization and get it looking like an actual simulation instead of a bunch of nerdy physics. The big blue ball in the middle is the neutron star ofc. And those lines are the magnetic field lines that surround the star. Tracing them was quite the pain. I had to trace the magnetic field from all the different points around the star. Then, figure out how to like follow it in both directions and have a copy of each field line on each side as you can see. It is DEFINITELY not staying like this. I wanna get it up to par with the rest of my work which is in the README (go check it out 😊). Although, not having models/assets is a big obstacle so I’m forced to draw everything with Pygame. Currently, the physics is simplified so I can get a minimum viable product of the simulation. So now I’m stuck between two choices: A) Get the simulator to look significantly better or B) Unsimplify the physics and make it technically impressive I’ll go start figuring out that one next
Devlog 3 The pulsar is finally starting to look 3D Today I connected it to the camera system from the rest of the simulator, so I can rotate and zoom around it properly now. I also added a 3D background starfield, which surprisingly helped a lot because you can actually between the front and the back of the simulation The magnetic field lines were also moved from 2D plane into a 3D plane around the neutron star. I added some glow to them and worked on a feature where the lines that go behind it just disappear instead of awkwardly just being in the background There were a couple annoying bugs with lines randomly disappearing and even entering the star itself, but those are fixed now It still has a LONG way to go visually, but I think it’s starting to resemble the kind of pulsar simulation I had in mind
I thought the hardest part would be the pulsar physics, turns out it was the rendering that was a genuine pain I reworked the field lines into 3D instead of the ugly previous 2D, added rotation, added a beam that you see in pulsars, and basic camera controls. I’m quite happy with how its all coming together.
I just finished the final touches on the pulsar visualization. I changed the beams to be more cone-like for visualization purposes, added control panel functionality and packaged it all into a .exe for you guys to try I’ll try to create alternative for the goated non-Windows users https://github.com/Coverst-ux/space-sim/releases/tag/v1.0.0 <- .exe file https://github.com/Coverst-ux/space-sim <- github repo/readme
I spent most of my time today polishing up my README for the stardance so I can actually reship the project I really just broke down the details of the stardance/pulsar work with a little more explanation so the reader knows what’s going on such as rotation period, light cylinder, magnetic dipole field, etc… Finally, I updated the demo website on my github to have the github icon actually point to the source code instead of just pointing to my general github profile Probably not my most productive/impressive session but definitely was needed Any feedback or suggestions is greatly appreciated!
Energy loss Normally, a pulsar loses energy when the magnetic field rotates. My simulation previously didn’t account for that. So that brought me to the idea of making the pulsar more realistic by implementing an energy loss system that causes the pulsar to slow down over time New physics that was implemented Magnetic field radiation power: Calculated how much rotational energy the pulsar loses Spin down: Using that energy loss to calculate how quickly the velocity decreases Sneak peek into the actual physics behind this : P = -I × Ω × Ω̇ Where: P is the power radiated by the pulsar, measured in watts. I is the pulsar’s moment of inertia, which describes how difficult it is to change its rotation. Ω is its angular velocity, measured in radians per second. Ω̇ is the rate of change of angular velocity, measured in radians per second squared. The negative sign is for the loss of rotational energy. Since the pulsar is slowing down, its spin down rate is negative, while the pulsar’s radiated power is positive Lastly, connecting everything I updated my pybind11 bindings to integrate the new C++ code into my pygame visualization. I also made sure that rotation speed doesn’t cause the magnetic axis to jump and that everything works as intended https://github.com/Coverst-ux/Space-sim-Cpp-Port
README rework I did a MAJOR readme overhaul by restructuring it into like one continuous story while also making it sound less like a research paper (although the research paper vibe was my goal at the start) Before, my readme was messy with no structure and just mixed into each other My cleanup was mainly just reordering it and changing a few paragraphs to sound less research-y and more fun/story vibe Most of the info was already previously there from the first version of the readme so this session was just about presentation
Ships:
I made an interactive pulsar simulation with 3D magnetic field lines, rotating polar beams, adjustable rotation speed/tilt, camera controls and a few live values. The most annoying part was probably getting the field lines, depth and render order to stop looking weird together, but I got it into a state I’m actually happy with. The physics side is handled through my C++ backend and the rendering is done in Python/Pygame. For testing: arrow keys rotate the camera, scroll zooms, A/D changes rotation speed, W/S changes the magnetic tilt and Space pauses it. I also packaged it into a Windows .exe so you can just download it and try it This is the github release, the website is just for documentation and research purposes, a fancy README https://github.com/Coverst-ux/space-sim/releases/tag/v1.0.0...
|
1793224288.1247134
|
1793310688.1247134
|
|
52655
|
Sakura Productivity Dashboard by @Rezz | Stardance
|
Rezz
|
1
|
54.8
|
876
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T17:59:06Z", "hours": 52.0, "multiplier": 16.9, "payout": 876, "blessing": "neutral", "text": "Sakura Productivity Dashboard!! A Sakura-inspired productivity dashboard built with HTML, CSS & JavaScript. A single dashboard combining To-Do List, Pomodoro timer, weather, and music into one workspace to improve productivity! I started this project as a simple To-Do List, but I kept thinking of things I could add to it until it turned into a full productivity dashboard. The main idea was to have everything I would need while studying in one place: a To-Do List, Pomodoro timer, weather, and music. I also wanted it to actually look nice, because I know I personally wouldn’t want to use a boring productivity app every day. What I Built: :>To-Do List with adding, deleting and completing tasks :>Tasks saved using Local Storage :>25-minute Pomodoro timer :>Weather search using the Open-Meteo API :>Automatic location detection :>Humidity, temperature, wind and weather conditions :>Lo-fi music player :>Play/pause, volume and progress controls :>Animated Sakura petals Making It Easy to Use: I have deployed it on github pages and made sure it works smoothly so anyone can just open and use with no need of a tutorial. I made many changes to make user experience wayy better: :>You can press Enter instead of having to click the buttons every time. :>Tasks stay saved even after refreshing the page. :>The To-Do List scrolls instead of making the whole dashboard keep getting bigger. :>Weather can either be searched manually or found automatically using your location. :>The important information is visible without having to open different pages. :>I kept the layout compact so the whole project can be demonstrated on one screen. The Theme!! The Sakura theme my favourite part of the design. It is the entire reason I made this in the first place. I always imagined an app like this and I will use this theme in the future as well. The falling petals and the tree and the seemingly morning sky looks very nice to me I hope everyone else likes it as well!!! Technical things used and learned! :>DOM manipulation and dynamically creating elements :>Local Storage for persistent data :>Managing application state :>Timers using setInterval() and clearInterval() :>sync JavaScript with async/await :>Fetch API and working with JSON data :>Error handling with try/catch :>Browser Geolocation API :>HTML Audio API and audio controls :>Connecting JavaScript with CSS animations :>Open-Meteo weather API :>Geocoding and reverse geocoding :>Using latitude and longitude :>Browser location permissions :>Working with external API data :>CSS Grid for dashboard layouts :>Flexbox :>Responsive design and media queries :>Scrollable containers and overflow :>Positioning and z-index :>Gradients and transparency :>CSS animations and @keyframes :>Transitions and transforms :>Creating consistent UI components", "repo": "https://github.com/KartikeyaMishra-Ark/Focus-App", "demo": "https://kartikeyamishra-ark.github.io/Focus-App/"}]...
|
[{"post_id": 72592, "ts": "202 [{"post_id": 72592, "ts": "2026-09-23T09:35:19Z", "hours": 2.8031, "text": "Back to this after long! I have added a few features to the to-do list. Added task priorities which can be selected when adding the tasks and can also be edited directly on the task. Also added task filtering for filtering based on task completion and priority. Added similar css to match my theme as everyone loved the theme when i shipped. I plan to add more songs and also add more features to the pomodoro and weather app and then ship the update!"}, {"post_id": 59707, "ts": "2026-09-01T17:10:43Z", "hours": 4.0942, "text": "Final Devlog!! I am finally done with this one! I have polished UI as much as I could. The CSS is a nightmare. I tried to change the entire UI but it broke the entire thing and I kept adding new attributes at the bottom instead to redoing the already existing ones so it became so messed up that I could not tell what was working and what was not. So I just kept adding until everything just worked out and it somehow works and I am not going to touch it. I also tried to make audio play instantly as site opens but failed. The grid in which the main three apps are placed is a nightmare I have made it symmetrical after at least 20 tries. The weather and pomodoro kept fighting each other. I also added the scroll feature to the to do list so whenever too many tasks are added it will just become scrollable. And I removed the scroll bar because it looks bad. With this it is officially over. This project was way out of my league as a beginner. Thanks for reading!!!!!"}, {"post_id": 59216, "ts": "2026-08-31T21:45:43Z", "hours": 8.1783, "text": "I am tired of CSS now. After the last devlog I first redesigned the layout of the music player. Then I decided that my weather app missed an important functionality which was location detection. So I had to learn how to do that and then I also made it so that when the user opens the website it will automatically ask for location. If the user denies it will default to Tokyo. Then I added song progress control and refined the UI of the music player. Then I remade it 5 more times until what we have here. Still not satisfied. I did the. background again to make it look like the sky a little bit. Plain pink looked bad. I am going to make it again. Then started my nightmare. I tried to make my three apps into a dashboard so I created a new div and made it into a grid and then tried to fit all three inside the grid and make it look like it does now. Firstly I had to learn all about how this works and then I had to try it for the first time. The pomodoro and weather kept breaking. All their contents kept spilling out. No matter what I did it was not working. I could not understand what the error was so I wrote new rules at the bottom of the css and due to all that My css is now a 1000 lines long. I am afraid to clean it up because I don’t want it to break. There were so many problems with creating the dashboard. The background was moving when scrolling. The credits are now inside the music player for some reason. When adding the location detector I broke the code and spent 2 hours figuring out what the problem was only for it to be wrong linking of html id of a div. My CSS currently must have at least 4 duplicates of the the Pomo and weather and the dashboard. There is still refinement to do. But it’s almost over. I think this was too much as a second project. Thanks for reading."}, {"post_id": 58257, "ts": "2026-08-30T16:58:14Z", "hours": 1.6878, "text": "Added background music. Selected a few royalty free quality lofi songs from the yt channel Tama’s little music shop. I will credit them in the readme. Adding the music and its basic ui was fairly simple. I just created a div, added two options and linked the music. Added a button to play and an input to set volume. Then added all their functionality in the javascript took very simple functions and It is all working properly. I am going to add a couple more sings maybe but for now All the features I wanted to add are there and I just have to polish the UI properly so it looks like a proper focus dashboard instead of a 4-in-1 project. Thanks for reading!!"}, {"post_id": 57672, "ts": "2026-08-29T21:55:16Z", "hours": 4.9972, "text": "I have finally added petals to the project and boy was it tough. Maybe the most difficult thing I have done in this project. They are still not perfect after hours of making nd remaking. Trying to make different petals, animating their flow in the wind. Making them look like they are falling from the tree. At first I made them look horrendous so I had to design them a bit. They still look not good enough so maybe I will change the look. But the most difficult part was the animation. I must have written the keyframes more than a hundred times because it looks so unnatural every time. I just could not figure out how to make it look natural. But I have now reached a point where I believe it looks decent enough for me to move forward towards the completion of the project and after I have finally added everything I want in there I will polish it and possibly assign an sig to each petal. I am not sure tho. Thank you for reading!!"}, {"post_id": 57142, "ts": "2026-08-29T07:42:42Z", "hours": 1.6889, "text": "Added the sakura tree properly. I tried to make an svg myself but I heavily underestimated the skill requirement to do it. So I gave up and added a free premade sakura tree svg which has been attributed in the bottom of the page as asked by the source website. I have given is -1 z index so it appears properly and gave my cards an alpha value so that I can have transparency as it look pretty. And I have to say sag is some serious stuff. All these vectors were destroying me and I couldn’t do any better than before so I decided I should use this. I hope it is allowed. Going to add the falling petals next. Thanks for reading!! Credit: https://www.vecteezy.com/free-vector/sakura-tree"}, {"post_id": 56866, "ts": "2026-08-28T20:48:06Z", "hours": 3.39, "text": "This is kind of an embarrassing devlog. I have been trying to polish the theme so I decided to add a sakura tree and also reverse the pallets in the background and the cards. Well as you can see the tree looks nothing like it should because what I tried to do was create a few new divs in html for the tree like the trunk, branches and the blossoms. I created individual classes and spans for each and tried to design them in css and I failed miserably as we can see there. I have now found out that in these situations we are supposed to use an svg file to make the tree which is what I am gonna do next. I really regret the past three hours I spent rotating branches to make it look like I wanted to. My vision is to make a tree and then change the background into a sky and have all three of my applications under the tree with petals falling and loft music playing. I hope I can reach there. I genuinely spent so much time in the html and css to make this tree which looks like a brown explosion. Thanks for reading."}, {"post_id": 56714, "ts": "2026-08-28T16:09:04Z", "hours": 1.9969, "text": "No visible changes this time but I added Data persistence finally. I was holding up on it because it was looking too complicated but it was no too bad, took me a couple of hours. Did break my code once when I tried to change my previous functions but then found out that I can just add new ones to do the work instead of modifying the old ones. THAT is something important I learnt. I am going to do devlogs more often as in this project I have posted too less. I tried to add recommendations for search in the weather search but it’s too complicated. Thanks for reading!!"}, {"post_id": 56234, "ts": "2026-08-27T22:14:24Z", "hours": 7.9103, "text": "Added the weather app. I am getting way faster than before. This would have taken me so much time before but this worked out fairly simply. I am more efficient in function building now. I sped through it this time while I struggled with it before. CSS was also way easier as I just copied the theme of my previous two features. Most of the time of spent learning and experimenting with all the new things like Async, Await, JSON data, APIs etc. Of course it was not as smooth sailing as I am saying I of course ran into a lot of problems as a beginner with a weak base and weak concepts but it was way better than before. I am not going to add more features after this. I am going to make it aesthetically pleasing and ship it as I want to try a new project. I still have to add a few more features like a default weather display, search recommendations, revamp of the entire aesthetic, background music and I want to add sakura petals floating on the screen falling from a tree. I have no idea how to do it right now but I will when I finish. Thanks for reading everyone!!"}, {"post_id": 54107, "ts": "2026-08-24T22:13:52Z", "hours": 7.9386, "text": "Finally added the pomodoro. It was more complicated than I thought it would be. I had to learn a lot of how JavaScript processes math. I had to find help to do it because I was unable to make the timer run properly. Sleep deprivation didn’t help as well. I want to make it sakura theme but that is kinds hard cause I don’t know my colour theory. It’s still very hard to add features to this. I cannot think about how I would format this because they are kinda awkward like this. It was fun understanding how to convert seconds into unites and seconds in Javascript and make it display on screen like that. also had to learn about how the interval works I still don’t understand is very properly but I know I how to make it work in this situation. Next up a little bug fixes with the pomodoro and then another feature will be added to this. Thanks for reading!!:>"}, {"post_id": 53162, "ts": "2026-08-23T16:34:11Z", "hours": 5.2589, "text": "Hello everyone! I am done with the to-do list now. It now functions properly. You can add tasks, delete tasks. complete tasks. The javascript for it was very easy to do once I looked back at my previous project but the CSS destroyed me. I have spent so many hours on it. It is so difficult to design it because I don’t have a tutorial to copy the design from. Also damn is everything so difficult. I spend two hours trying everything to figure out how to add different properties to different things which were essentially in the same list because I had appended them from Javascript. After figuring that out. I got into trouble with the delete button. I was using the general button class in CSS not realising that the add task button falls under the same category and was wondering why whenever I add a margin to the delete button the add task button started moving. I eventually figured out I had to add a different class to the delete button which I now realise is so obvious. I added hover animations to everything, click animation to everything. And now everything works perfectly. I do think I should add a better animation to when we complete a task so I will work on it. Oh I forgot one thing. It is so freaking Hard to make a theme from scratch. like I was so lost trying to making everything look good. every text every hover. every button every background it look so long to perfect. thankfully I can select the rep visually instead of having to type it down everytime. Next I am going to work on adding the pomodoro. Let’s see what new things I learn! Thank you for reading!"}, {"post_id": 52132, "ts": "2026-08-22T07:02:31Z", "hours": 4.6989, "text": "Starting development on a to-do app. I believe it’s a good project for a beginner like me. For now I have added just added container, input box, add task button and the task list in the HTML. I have also done the basic CSS styling so it currently looks like the image below. After that I have added the basic function of a todo list in javascript. The button adds the text from the input text box to the test list which exists below. That is all I have done for now. I am not using any tutorials this time I am using the knowledge from the previous project I built. I plan on adding a lot of features to this project. I plan to add pomodoro. Background music. Weather. And a calendar. Let’s see how many I actually am able to add by the end."}]...
|
Title: Sakura Productivity Dashboard by @Rezz | St Title: Sakura Productivity Dashboard by @Rezz | Stardance
Devlogs:
Starting development on a to-do app. I believe it’s a good project for a beginner like me. For now I have added just added container, input box, add task button and the task list in the HTML. I have also done the basic CSS styling so it currently looks like the image below. After that I have added the basic function of a todo list in javascript. The button adds the text from the input text box to the test list which exists below. That is all I have done for now. I am not using any tutorials this time I am using the knowledge from the previous project I built. I plan on adding a lot of features to this project. I plan to add pomodoro. Background music. Weather. And a calendar. Let’s see how many I actually am able to add by the end.
Hello everyone! I am done with the to-do list now. It now functions properly. You can add tasks, delete tasks. complete tasks. The javascript for it was very easy to do once I looked back at my previous project but the CSS destroyed me. I have spent so many hours on it. It is so difficult to design it because I don’t have a tutorial to copy the design from. Also damn is everything so difficult. I spend two hours trying everything to figure out how to add different properties to different things which were essentially in the same list because I had appended them from Javascript. After figuring that out. I got into trouble with the delete button. I was using the general button class in CSS not realising that the add task button falls under the same category and was wondering why whenever I add a margin to the delete button the add task button started moving. I eventually figured out I had to add a different class to the delete button which I now realise is so obvious. I added hover animations to everything, click animation to everything. And now everything works perfectly. I do think I should add a better animation to when we complete a task so I will work on it. Oh I forgot one thing. It is so freaking Hard to make a theme from scratch. like I was so lost trying to making everything look good. every text every hover. every button every background it look so long to perfect. thankfully I can select the rep visually instead of having to type it down everytime. Next I am going to work on adding the pomodoro. Let’s see what new things I learn! Thank you for reading!
Finally added the pomodoro. It was more complicated than I thought it would be. I had to learn a lot of how JavaScript processes math. I had to find help to do it because I was unable to make the timer run properly. Sleep deprivation didn’t help as well. I want to make it sakura theme but that is kinds hard cause I don’t know my colour theory. It’s still very hard to add features to this. I cannot think about how I would format this because they are kinda awkward like this. It was fun understanding how to convert seconds into unites and seconds in Javascript and make it display on screen like that. also had to learn about how the interval works I still don’t understand is very properly but I know I how to make it work in this situation. Next up a little bug fixes with the pomodoro and then another feature will be added to this. Thanks for reading!!:>
Added the weather app. I am getting way faster than before. This would have taken me so much time before but this worked out fairly simply. I am more efficient in function building now. I sped through it this time while I struggled with it before. CSS was also way easier as I just copied the theme of my previous two features. Most of the time of spent learning and experimenting with all the new things like Async, Await, JSON data, APIs etc. Of course it was not as smooth sailing as I am saying I of course ran into a lot of problems as a beginner with a weak base and weak concepts but it was way better than before. I am not going to add more features after this. I am going to make it aesthetically pleasing and ship it as I want to try a new project. I still have to add a few more features like a default weather display, search recommendations, revamp of the entire aesthetic, background music and I want to add sakura petals floating on the screen falling from a tree. I have no idea how to do it right now but I will when I finish. Thanks for reading everyone!!
No visible changes this time but I added Data persistence finally. I was holding up on it because it was looking too complicated but it was no too bad, took me a couple of hours. Did break my code once when I tried to change my previous functions but then found out that I can just add new ones to do the work instead of modifying the old ones. THAT is something important I learnt. I am going to do devlogs more often as in this project I have posted too less. I tried to add recommendations for search in the weather search but it’s too complicated. Thanks for reading!!
This is kind of an embarrassing devlog. I have been trying to polish the theme so I decided to add a sakura tree and also reverse the pallets in the background and the cards. Well as you can see the tree looks nothing like it should because what I tried to do was create a few new divs in html for the tree like the trunk, branches and the blossoms. I created individual classes and spans for each and tried to design them in css and I failed miserably as we can see there. I have now found out that in these situations we are supposed to use an svg file to make the tree which is what I am gonna do next. I really regret the past three hours I spent rotating branches to make it look like I wanted to. My vision is to make a tree and then change the background into a sky and have all three of my applications under the tree with petals falling and loft music playing. I hope I can reach there. I genuinely spent so much time in the html and css to make this tree which looks like a brown explosion. Thanks for reading.
Added the sakura tree properly. I tried to make an svg myself but I heavily underestimated the skill requirement to do it. So I gave up and added a free premade sakura tree svg which has been attributed in the bottom of the page as asked by the source website. I have given is -1 z index so it appears properly and gave my cards an alpha value so that I can have transparency as it look pretty. And I have to say sag is some serious stuff. All these vectors were destroying me and I couldn’t do any better than before so I decided I should use this. I hope it is allowed. Going to add the falling petals next. Thanks for reading!! Credit: https://www.vecteezy.com/free-vector/sakura-tree
I have finally added petals to the project and boy was it tough. Maybe the most difficult thing I have done in this project. They are still not perfect after hours of making nd remaking. Trying to make different petals, animating their flow in the wind. Making them look like they are falling from the tree. At first I made them look horrendous so I had to design them a bit. They still look not good enough so maybe I will change the look. But the most difficult part was the animation. I must have written the keyframes more than a hundred times because it looks so unnatural every time. I just could not figure out how to make it look natural. But I have now reached a point where I believe it looks decent enough for me to move forward towards the completion of the project and after I have finally added everything I want in there I will polish it and possibly assign an sig to each petal. I am not sure tho. Thank you for reading!!
Added background music. Selected a few royalty free quality lofi songs from the yt channel Tama’s little music shop. I will credit them in the readme. Adding the music and its basic ui was fairly simple. I just created a div, added two options and linked the music. Added a button to play and an input to set volume. Then added all their functionality in the javascript took very simple functions and It is all working properly. I am going to add a couple more sings maybe but for now All the features I wanted to add are there and I just have to polish the UI properly so it looks like a proper focus dashboard instead of a 4-in-1 project. Thanks for reading!!
I am tired of CSS now. After the last devlog I first redesigned the layout of the music player. Then I decided that my weather app missed an important functionality which was location detection. So I had to learn how to do that and then I also made it so that when the user opens the website it will automatically ask for location. If the user denies it will default to Tokyo. Then I added song progress control and refined the UI of the music player. Then I remade it 5 more times until what we have here. Still not satisfied. I did the. background again to make it look like the sky a little bit. Plain pink looked bad. I am going to make it again. Then started my nightmare. I tried to make my three apps into a dashboard so I created a new div and made it into a grid and then tried to fit all three inside the grid and make it look like it does now. Firstly I had to learn all about how this works and then I had to try it for the first time. The pomodoro and weather kept breaking. All their contents kept spilling out. No matter what I did it was not working. I could not understand what the error was so I wrote new rules at the bottom of the css and due to all that My css is now a 1000 lines long. I am afraid to clean it up because I don’t want it to break. There were so many problems with creating the dashboard. The background was moving when scrolling. The credits are now inside the music player for some reason. When adding the location detector I broke the code and spent 2 hours figuring out what the problem was only for it to be wrong linking of html id of a div. My CSS currently must have at least 4 duplicates of the the Pomo and weather and the dashboard. There is still refinement to do. But it’s almost over. I think this was too much as a second project. Thanks for reading.
Final Devlog!! I am finally done with this one! I have polished UI as much as I could. The CSS is a nightmare. I tried to change the entire UI but it broke the entire thing and I kept adding new attributes at the bottom instead to redoing the already existing ones so it became so messed up that I could not tell what was working and what was not. So I just kept adding until everything just worked out and it somehow works and I am not going to touch it. I also tried to make audio play instantly as site opens but failed. The grid in which the main three apps are placed is a nightmare I have made it symmetrical after at least 20 tries. The weather and pomodoro kept fighting each other. I also added the scroll feature to the to do list so whenever too many tasks are added it will just become scrollable. And I removed the scroll bar because it looks bad. With this it is officially over. This project was way out of my league as a beginner. Thanks for reading!!!!!
Back to this after long! I have added a few features to the to-do list. Added task priorities which can be selected when adding the tasks and can also be edited directly on the task. Also added task filtering for filtering based on task completion and priority. Added similar css to match my theme as everyone loved the theme when i shipped. I plan to add more songs and also add more features to the pomodoro and weather app and then ship the update!
Ships:
Sakura Productivity Dashboard!! A Sakura-inspired productivity dashboard built with HTML, CSS & JavaScript. A single dashboard combining To-Do List, Pomodoro timer, weather, and music into one workspace to improve productivity! I started this project as a simple To-Do List, but I kept thinking of things I could add to it until it turned into a full productivity dashboard. The main idea was to have everything I would need while studying in one place: a To-Do List, Pomodoro timer, weather, and music. I also wanted it to actually look nice, because I know I personally wouldn’t want to use a boring productivity app every day. What I Built: :>To-Do List with adding, deleting and completing tasks :>Tasks saved using Local Storage :>25-minute Pomodoro timer :>Weather search using the Open-Meteo API :>Automatic location detection :>Humidity, temperature, wind and weather conditions :>Lo-fi music player :>Play/pause, volume and progress controls :>Animated Sakura petals Making It Easy to Use: I have deployed it on github pages and made sure it works smoothly so anyone can just open and use with no need of a tutorial. I made many changes to make user experience wayy better: :>You can press Enter instead of having to click the buttons every time. :>Tasks stay saved even after refreshing the page. :>The To-Do List scrolls instead of making the whole dashboard keep getting bigger. :>Weather can either be searched manually or found automatically using your location. :>The important information is visible without having to open different pages. :>I kept the layout compact so the whole project can be demonstrated on one screen. The Theme!! The Sakura theme my favourite part of the design. It is the entire reason I made this in the first place. I always imagined an app like this and I will use this theme in the future as well. The falling petals and the tree and the seemingly morning sky looks very nice to me I hope everyone else likes it as well!!! Technical things used and learned! :>DOM manipulation and dynamically creating elements :>Local Storage for persistent data :>Managing application state :>Timers using setInterval() and clearInterval() :>sync JavaScript with async/await :>Fetch API and working with JSON data :>Error handling with try/catch :>Browser Geolocation API :>HTML Audio API and audio controls :>Connecting JavaScript with CSS animations :>Open-Meteo weather API :>Geocoding and reverse geocoding :>Using latitude and longitude :>Browser location permissions :>Working with external API data :>CSS Grid for dashboard layouts :>Flexbox :>Responsive design and media queries :>Scrollable containers and overflow :>Positioning and z-index :>Gradients and transparency :>CSS animations and @keyframes :>Transitions and transforms :>Creating consistent UI components...
|
1793242270.6409345
|
1793328670.6409345
|
|
47602
|
CLEAR ENGINE by @mindstormpro3 | Stardance
|
mindstormpro3
|
1
|
18.78
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T17:51:07Z", "hours": 17.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "CLEAR-ENGINE is a easy-to-use framework for making 3D turn-based strategy games, or at least 3D isometric-ish tile-based games. I originally made this because I wanted to make a videogame that was a cross between tactical breach wizards and ready or not, but I realized it was way out of scope for a small project and so I decided to make this awesome", "repo": "https://github.com/mindstormpro/CLEAR-ENGINE", "demo": "https://github.com/mindstormpro/CLEAR-ENGINE/releases/tag/V1.0.0"}]...
|
[{"post_id": 60960, "ts": "202 [{"post_id": 60960, "ts": "2026-09-03T17:18:31Z", "hours": 1.78, "text": "More API Docs and functions! I improved the API docs and also added the following functions to the tile rendering system: CLEAR.tiles.clearTileSystem() clears the initialized tile system CLEAR.tiles.hideTile(tx, ty, value) sets the hidden value for the tile at tx , ty to value (a boolean) CLEAR.tiles.isHidden(tx, ty) returns the hidden value for the tile at tx , ty as a boolean CLEAR.tiles.removeTile(tx, ty) removes the tile at tx , ty from the tile system I also added a simple check to all the CLEAR.tiles functions to make sure the tilesystem is initialized before they run to prevent errors."}, {"post_id": 59665, "ts": "2026-09-01T16:09:40Z", "hours": 1.6408, "text": "BASICALLY READY TO SHIP!!! I whipped up a quick demo that generates a 5x5 random room that you can spin around with the crank! I also implemented some basic docs using markdown to explain the basic usage of the API! (the docs are very simple rn, but I encourage you to actually read some of the source code and modify it to suit your needs if you feel you need a special feature out of it or just want more understanding to how it works) I just gotta make the README actually READable, Make a demo video, and clean up the documentation a little more and then profit!"}, {"post_id": 59312, "ts": "2026-09-01T01:12:25Z", "hours": 3.6111, "text": "PREPARING FOR FIRST SHIP!!! I’m gonna ship the first part of CLEAR-ENGINE, the rendering engine! After thinking about this for a while, I decided I want to ship my beautiful framework in multiple parts, with multiple stages of completion, and the first part is basically done! The rendering engine consists of a bunch of math to render all tiles relative to eachother in a cool way to make it look 3D, complete with a simple API to interface with it and full 360 Degree rotation support! To be fully ready for the ship, I need to do the following: expand the API a bit more make and render a couple more demo tiles make a simple demo project to show off the awesome functionality I made! make some docs I also do currently have my character and action systems in the works, but I will remove those from the demo and will not include those in the docs for now since those are goals for the next two ships I’ll do. “oh my god he’s actually being productive…” - the random person in the mirror"}, {"post_id": 56759, "ts": "2026-08-28T17:22:57Z", "hours": 2.7228, "text": "CLEAR ENGINE Devlog #3 wait… what happened to CLEAR? So CLEAR was going to be a turn-based strategy game based on Ready Or Not combined with Tactical Breach Wizards, but I realized two things: I can’t make good art. period. The scope of this project is way more than something doable in the duration remaining of Stardance. Luckily there’s some good news! I am a pretty skilled coder, so I decided to just take everything I have so far and turn it into a framework that anyone can use to make their cool 3D-ish turn-based games for the playdate! (I know, very mainstream right?) so that’s the new goal: I need to unify all of my different APIs into one usable API I need to make docs 😭 I need to add some features like A working state system with a planning, action, and response phase. Better art importing systems An easy character making system via custom lua files A demo for the ship more stuff I don’t really want to do!"}, {"post_id": 48276, "ts": "2026-08-16T16:16:04Z", "hours": 4.3564, "text": "CLEAR Devlog #2 The Tile Rendering Engine is DONE!* * hopefully Now, tiles can render next to each other with no issues, and with 8 tiles in the scene while spinning it manages a SOLID 30FPS!!! The best part is, that’s with the FPS cap set to 30, so I bet I can push 40, or maybe even optimize it enough to get 50! I also added distance sorting, so the tiles that are the farthest away from the “camera” get drawn first and so forth so that everything appears normal when overlapping. Finally, I also completely restructured the entire game so far and moved all the tile stuff to it’s own file, to declutter my main.lua script."}, {"post_id": 46643, "ts": "2026-08-14T01:31:50Z", "hours": 4.7247, "text": "CLEAR Devlog #1! so what actually is CLEAR? CLEAR is an isometric (ish) turn-based action strategy game that is essentially a cross between Ready Or Not and Tactical Breach Wizards (would 10/10 recommend). The game flow is something like this: Your turn! you can: Move any of your teammates Do any of your characters’ actions that you can do based on their mana and turn levels Then you end your turn and the enemy plays: They will move, attack, and use abilities to try to defeat your team Repeat! (until either your team is wiped out, the objective is complete, or all enemies are defeated) Features: Fog of war! You can’t see anything your characters can’t actively see. Multiple missions multiple selectable characters to build your team Arco inspired skill tree Cool 1-Bit artstyle Oh, and did I mention it’s (for now) EXCLUSIVELY for the https://play.date ! Right now I have spent my time working on the rendering engine, that should be done by the next one! (optimization sucks… sigh )"}]...
|
Title: CLEAR ENGINE by @mindstormpro3 | Stardance
Title: CLEAR ENGINE by @mindstormpro3 | Stardance
Devlogs:
CLEAR Devlog #1! so what actually is CLEAR? CLEAR is an isometric (ish) turn-based action strategy game that is essentially a cross between Ready Or Not and Tactical Breach Wizards (would 10/10 recommend). The game flow is something like this: Your turn! you can: Move any of your teammates Do any of your characters’ actions that you can do based on their mana and turn levels Then you end your turn and the enemy plays: They will move, attack, and use abilities to try to defeat your team Repeat! (until either your team is wiped out, the objective is complete, or all enemies are defeated) Features: Fog of war! You can’t see anything your characters can’t actively see. Multiple missions multiple selectable characters to build your team Arco inspired skill tree Cool 1-Bit artstyle Oh, and did I mention it’s (for now) EXCLUSIVELY for the https://play.date ! Right now I have spent my time working on the rendering engine, that should be done by the next one! (optimization sucks… sigh )
CLEAR Devlog #2 The Tile Rendering Engine is DONE!* * hopefully Now, tiles can render next to each other with no issues, and with 8 tiles in the scene while spinning it manages a SOLID 30FPS!!! The best part is, that’s with the FPS cap set to 30, so I bet I can push 40, or maybe even optimize it enough to get 50! I also added distance sorting, so the tiles that are the farthest away from the “camera” get drawn first and so forth so that everything appears normal when overlapping. Finally, I also completely restructured the entire game so far and moved all the tile stuff to it’s own file, to declutter my main.lua script.
CLEAR ENGINE Devlog #3 wait… what happened to CLEAR? So CLEAR was going to be a turn-based strategy game based on Ready Or Not combined with Tactical Breach Wizards, but I realized two things: I can’t make good art. period. The scope of this project is way more than something doable in the duration remaining of Stardance. Luckily there’s some good news! I am a pretty skilled coder, so I decided to just take everything I have so far and turn it into a framework that anyone can use to make their cool 3D-ish turn-based games for the playdate! (I know, very mainstream right?) so that’s the new goal: I need to unify all of my different APIs into one usable API I need to make docs 😭 I need to add some features like A working state system with a planning, action, and response phase. Better art importing systems An easy character making system via custom lua files A demo for the ship more stuff I don’t really want to do!
PREPARING FOR FIRST SHIP!!! I’m gonna ship the first part of CLEAR-ENGINE, the rendering engine! After thinking about this for a while, I decided I want to ship my beautiful framework in multiple parts, with multiple stages of completion, and the first part is basically done! The rendering engine consists of a bunch of math to render all tiles relative to eachother in a cool way to make it look 3D, complete with a simple API to interface with it and full 360 Degree rotation support! To be fully ready for the ship, I need to do the following: expand the API a bit more make and render a couple more demo tiles make a simple demo project to show off the awesome functionality I made! make some docs I also do currently have my character and action systems in the works, but I will remove those from the demo and will not include those in the docs for now since those are goals for the next two ships I’ll do. “oh my god he’s actually being productive…” - the random person in the mirror
BASICALLY READY TO SHIP!!! I whipped up a quick demo that generates a 5x5 random room that you can spin around with the crank! I also implemented some basic docs using markdown to explain the basic usage of the API! (the docs are very simple rn, but I encourage you to actually read some of the source code and modify it to suit your needs if you feel you need a special feature out of it or just want more understanding to how it works) I just gotta make the README actually READable, Make a demo video, and clean up the documentation a little more and then profit!
More API Docs and functions! I improved the API docs and also added the following functions to the tile rendering system: CLEAR.tiles.clearTileSystem() clears the initialized tile system CLEAR.tiles.hideTile(tx, ty, value) sets the hidden value for the tile at tx , ty to value (a boolean) CLEAR.tiles.isHidden(tx, ty) returns the hidden value for the tile at tx , ty as a boolean CLEAR.tiles.removeTile(tx, ty) removes the tile at tx , ty from the tile system I also added a simple check to all the CLEAR.tiles functions to make sure the tilesystem is initialized before they run to prevent errors.
Ships:
CLEAR-ENGINE is a easy-to-use framework for making 3D turn-based strategy games, or at least 3D isometric-ish tile-based games. I originally made this because I wanted to make a videogame that was a cross between tactical breach wizards and ready or not, but I realized it was way out of scope for a small project and so I decided to make this awesome...
|
1793249689.7155116
|
1793336089.7155116
|
|
55420
|
My own site! by @thomasmead | Stardance
|
thomasmead
|
1
|
1.0
|
1
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T17:39:53Z", "hours": 1.0, "multiplier": 1.19, "payout": 1, "blessing": "neutral", "text": "THIS IS MY WEBSITE! Lots of it isn’t filled out (and there is still some placeholder) but as I work on more projects I’ll fill it out with some more stuff and things. It needs data to fill in.", "repo": "https://github.com/th3-pr0gr4mm3r/ma-site", "demo": "https://thomasmead.xyz"}]...
|
[{"post_id": 59491, "ts": "202 [{"post_id": 59491, "ts": "2026-09-01T11:09:44Z", "hours": 0.3794, "text": "Personal Site - Devlog 2 I added new stuff and new functions to it and deployed it using github pages. WARNING - TLS IS NOT ENABLED YET!!!"}, {"post_id": 59063, "ts": "2026-08-31T17:36:30Z", "hours": 0.7394, "text": "Personal Site - Devlog 1 Scaffolded the Astro website and ripped all the boilerplate out of it. I then made this cool terminal interface using the Termino.js library. Right now it’s very basic and barebones however."}]...
|
Title: My own site! by @thomasmead | Stardance
De Title: My own site! by @thomasmead | Stardance
Devlogs:
Personal Site - Devlog 1 Scaffolded the Astro website and ripped all the boilerplate out of it. I then made this cool terminal interface using the Termino.js library. Right now it’s very basic and barebones however.
Personal Site - Devlog 2 I added new stuff and new functions to it and deployed it using github pages. WARNING - TLS IS NOT ENABLED YET!!!
Ships:
THIS IS MY WEBSITE! Lots of it isn’t filled out (and there is still some placeholder) but as I work on more projects I’ll fill it out with some more stuff and things. It needs data to fill in....
|
1793307095.4569702
|
1793393495.4569702
|
|
39166
|
My Snake again ? by @shreyas | Stardance
|
shreyas
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T17:32:07Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This game was created as a part of my school project “Play with CSS “ .I forgot to ship it a month back . I rebrushed my HTML and CSS skills with this .Thank you", "repo": "https://github.com/catmoreak/My-Snake-again", "demo": "https://mysnakeagain.netlify.app"}]...
|
[{"post_id": 36800, "ts": "202 [{"post_id": 36800, "ts": "2026-07-29T02:56:16Z", "hours": 0.565, "text": "I have revamped the styles for my game and also added some in game twists. i made the snake too hard to control using the keys and instead of moving in a straight path ,now the snake will take some unidentfied turns making it harder for the player to control"}, {"post_id": 36107, "ts": "2026-07-27T23:56:11Z", "hours": 1.0461, "text": "i hv completed the main canvas game .The snake expands itself when it feeds on the fruit. the snake can be controlled using AWSD keys in the keyboard"}, {"post_id": 35311, "ts": "2026-07-26T17:07:48Z", "hours": 1.1186, "text": "i have started with the script.js coding . i will have a button controlled directly with the keyboard (ASWD keys) . The container will embed the snake and the fruit sprite dircetly in the canvas"}, {"post_id": 34951, "ts": "2026-07-26T02:14:50Z", "hours": 0.6647, "text": "i have started the development with a html canvas .The canvas will house all the necessary buttons , sprites and the scoring system"}, {"post_id": 34404, "ts": "2026-07-25T02:48:07Z", "hours": 0.3981, "text": "I have started working a simple web browser playable game which will house a snake treating on a sweet fruit. I have decided to make the game with less complexity that is HTML and CSS instead of any web frameworks such as React .This will allow me to iterate more and justify the development keeping low technical overhead .Right now im writting the CSS stylesheet"}]...
|
Title: My Snake again ? by @shreyas | Stardance
D Title: My Snake again ? by @shreyas | Stardance
Devlogs:
I have started working a simple web browser playable game which will house a snake treating on a sweet fruit. I have decided to make the game with less complexity that is HTML and CSS instead of any web frameworks such as React .This will allow me to iterate more and justify the development keeping low technical overhead .Right now im writting the CSS stylesheet
i have started the development with a html canvas .The canvas will house all the necessary buttons , sprites and the scoring system
i have started with the script.js coding . i will have a button controlled directly with the keyboard (ASWD keys) . The container will embed the snake and the fruit sprite dircetly in the canvas
i hv completed the main canvas game .The snake expands itself when it feeds on the fruit. the snake can be controlled using AWSD keys in the keyboard
I have revamped the styles for my game and also added some in game twists. i made the snake too hard to control using the keys and instead of moving in a straight path ,now the snake will take some unidentfied turns making it harder for the player to control
Ships:
This game was created as a part of my school project “Play with CSS “ .I forgot to ship it a month back . I rebrushed my HTML and CSS skills with this .Thank you...
|
1793220483.3264477
|
1793306883.3264477
|
|
13129
|
Moondew Mountains by @samriddhjoneja | Stardance
|
samriddhjoneja
|
2
|
14.0
|
59
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T17:17:18Z", "hours": 2.0, "multiplier": 5.52, "payout": 13, "blessing": "neutral", "text": "I made an rpg game . WASD or arrow keys to move, slay all the slimes in all the levels to win. the slimes might drop health. Added a main menu and made slimes more dangerous and fixed some bugs", "repo": "https://github.com/sj6258/Moondew--Mountains", "demo": "https://sj6258.itch.io/moondew-mountains"}, {"ship_num": 2, "ts": "2026-08-27T17:39:36Z", "hours": 12.0, "multiplier": 7.83, "payout": 46, "blessing": "neutral", "text": "I made an RPG game with cute retro graphics. The part which was really challenging and which i am proud of is making the collisions work for the enemy and the HUD heart health display system. WASD to move and E to attack. The goal is to eliminate all the enemies on all 3 levels", "repo": "https://github.com/sj6258/Moondew--Mountains", "demo": "https://sj6258.itch.io/moondew-mountains"}]...
|
[{"post_id": 59696, "ts": "202 [{"post_id": 59696, "ts": "2026-09-01T16:53:57Z", "hours": 2.3514, "text": "Made a Main Menu screen with a settings menu where you can control volume and adjust fullscreen Also changed enemy behaviour and made it more menacing. scaled it up and increase its sight. fixed a bug where the health wouldn’t get dropped correctly when enemy is killed"}, {"post_id": 55669, "ts": "2026-08-27T17:05:00Z", "hours": 0.8497, "text": "Designed th e health mechanics for the player Used the depiction of 5 hearts on the HUD for the player health where each half heart gets taken away for each slime hit. Fixed a bug where the player would get heart after the slime was defeated The slimes now have a 50 percent chance to drop a heart Finally finished my game"}, {"post_id": 55034, "ts": "2026-08-26T13:49:14Z", "hours": 1.3253, "text": "Made the health system for the player where the health gets reduced when damaged by a slime. Health does not regenerate when changing levels also added the UI for health as 5 hearts which deplete accordingly."}, {"post_id": 53721, "ts": "2026-08-24T12:02:27Z", "hours": 1.9056, "text": "Created the transitions between the levels and scenes so that when the player dies the screen fades away and restarts from level 1 Made the player death animation and coded it in the game Fixed a bug where the bridge in level 3 was not working properly Fixed another bug where the players health would remain the same after death and respawn. Added variables and elements for players health Also fixed the player taking damage sound"}, {"post_id": 48052, "ts": "2026-08-16T10:28:10Z", "hours": 1.0256, "text": "Completed Level design made level 2 and level 3. Also made transitions using gdscript and preload cmd. Finished combat mechanics only player health and slime damage is left fixed a bug where it wouldn’t changed scenes or get back to the root scene completed the levels by using a root scene and making inherited scenes . added a bridge sprite to the game"}, {"post_id": 47557, "ts": "2026-08-15T15:11:11Z", "hours": 1.0408, "text": "Started on level 2 and level 3 inherited from root level, made a change in scene transitions so that it changes it automatically using the level no. as int variable Changed Enemy behaviour and increased the detection range Fixed Combat bugs and the enemy would be thrown in the opposite direction"}, {"post_id": 46485, "ts": "2026-08-13T18:36:37Z", "hours": 2.235, "text": "Finished making the player and added a camera that moves with the player with limits. Made the root level from which scenes will be inherited and added overlay decoration Added Y-sorting so that the game feels 3D and normal Fixed collisions for slimes and decorations and also added world borders Fixed some bugs in combat and movement mechanics"}, {"post_id": 9489, "ts": "2026-06-15T20:49:00Z", "hours": 1.1489, "text": "Connected the signals for detection and attack Added attack mechanics to the player so now the player hits the slime and it takes damage and gets pushed back Added health to slime so that it plays destroyed animation after getting hit a few times and evaporates from the game"}, {"post_id": 4984, "ts": "2026-06-08T17:09:10Z", "hours": 2.0567, "text": "Started working on a top down role playing game with 3 levels and slimes as enemies to deal with. Imported the assets Added player and enemy sprites Made the animations for the player and sprites Added collisions and detection box"}]...
|
Title: Moondew Mountains by @samriddhjoneja | Star Title: Moondew Mountains by @samriddhjoneja | Stardance
Devlogs:
Started working on a top down role playing game with 3 levels and slimes as enemies to deal with. Imported the assets Added player and enemy sprites Made the animations for the player and sprites Added collisions and detection box
Connected the signals for detection and attack Added attack mechanics to the player so now the player hits the slime and it takes damage and gets pushed back Added health to slime so that it plays destroyed animation after getting hit a few times and evaporates from the game
Finished making the player and added a camera that moves with the player with limits. Made the root level from which scenes will be inherited and added overlay decoration Added Y-sorting so that the game feels 3D and normal Fixed collisions for slimes and decorations and also added world borders Fixed some bugs in combat and movement mechanics
Started on level 2 and level 3 inherited from root level, made a change in scene transitions so that it changes it automatically using the level no. as int variable Changed Enemy behaviour and increased the detection range Fixed Combat bugs and the enemy would be thrown in the opposite direction
Completed Level design made level 2 and level 3. Also made transitions using gdscript and preload cmd. Finished combat mechanics only player health and slime damage is left fixed a bug where it wouldn’t changed scenes or get back to the root scene completed the levels by using a root scene and making inherited scenes . added a bridge sprite to the game
Created the transitions between the levels and scenes so that when the player dies the screen fades away and restarts from level 1 Made the player death animation and coded it in the game Fixed a bug where the bridge in level 3 was not working properly Fixed another bug where the players health would remain the same after death and respawn. Added variables and elements for players health Also fixed the player taking damage sound
Made the health system for the player where the health gets reduced when damaged by a slime. Health does not regenerate when changing levels also added the UI for health as 5 hearts which deplete accordingly.
Designed th e health mechanics for the player Used the depiction of 5 hearts on the HUD for the player health where each half heart gets taken away for each slime hit. Fixed a bug where the player would get heart after the slime was defeated The slimes now have a 50 percent chance to drop a heart Finally finished my game
Made a Main Menu screen with a settings menu where you can control volume and adjust fullscreen Also changed enemy behaviour and made it more menacing. scaled it up and increase its sight. fixed a bug where the health wouldn’t get dropped correctly when enemy is killed
Ships:
I made an RPG game with cute retro graphics. The part which was really challenging and which i am proud of is making the collisions work for the enemy and the HUD heart health display system. WASD to move and E to attack. The goal is to eliminate all the enemies on all 3 levels
I made an rpg game . WASD or arrow keys to move, slay all the slimes in all the levels to win. the slimes might drop health. Added a main menu and made slimes more dangerous and fixed some bugs...
|
1793296083.1583793
|
1793382483.1583793
|
|
57127
|
CHAOX-TAB by @chaox | Stardance
|
chaox
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T16:57:25Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i made it to learn and practice coding and to get the stardust nothing was that challenging except the css i think its a little hard", "repo": "https://github.com/01HACKER01/CHAOX-TAB", "demo": "https://01hacker01.github.io/CHAOX-TAB/"}]...
|
[{"post_id": 59697, "ts": "202 [{"post_id": 59697, "ts": "2026-09-01T16:54:12Z", "hours": 2.4017, "text": "i made the website for the mission give ur website a pulse"}]...
|
Title: CHAOX-TAB by @chaox | Stardance
Devlogs:
i Title: CHAOX-TAB by @chaox | Stardance
Devlogs:
i made the website for the mission give ur website a pulse
Ships:
i made it to learn and practice coding and to get the stardust nothing was that challenging except the css i think its a little hard...
|
1793256506.868425
|
1793342906.868425
|
|
51875
|
PULSED TASH by @vrajsanghavi | Stardance
|
vrajsanghavi
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T16:39:12Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i have made a website which displays nasa space pics daily !! i used NASA ’s API and everything i described in my README.md so check it i have not done the perfect website but i learnt more than this !! everything feels cool yet you like !!", "repo": "https://github.com/vraj2011/PULSED-TASH", "demo": "https://pulsed-tash.netlify.app/"}]...
|
[{"post_id": 59679, "ts": "202 [{"post_id": 59679, "ts": "2026-09-01T16:31:43Z", "hours": 1.0419, "text": "i worked on everything and i finally finished up by using some of nasa ’s APIs …"}]...
|
Title: PULSED TASH by @vrajsanghavi | Stardance
D Title: PULSED TASH by @vrajsanghavi | Stardance
Devlogs:
i worked on everything and i finally finished up by using some of nasa ’s APIs …
Ships:
i have made a website which displays nasa space pics daily !! i used NASA ’s API and everything i described in my README.md so check it i have not done the perfect website but i learnt more than this !! everything feels cool yet you like !!...
|
1792878785.5267985
|
1793742785.5267985
|
|
56315
|
3D Physics Simulator by @RajanKC | Stardance
|
RajanKC
|
1
|
6.03
|
16
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T15:58:18Z", "hours": 5.0, "multiplier": 2.95, "payout": 16, "blessing": "neutral", "text": "Completed the Project. Please rate it good", "repo": "https://github.com/RajanKCKC/3D-Physics", "demo": "https://rajankckc.github.io/3D-Physics/"}]...
|
[{"post_id": 64953, "ts": "202 [{"post_id": 64953, "ts": "2026-09-09T18:06:46Z", "hours": 0.6258, "text": "Implement drag-and-drop functionality for dynamic objects in the physics simulation"}, {"post_id": 60233, "ts": "2026-09-02T13:53:12Z", "hours": 0.4, "text": "Update README.md for improved project description and gameplay instructions"}, {"post_id": 59654, "ts": "2026-09-01T15:56:34Z", "hours": 0.2697, "text": "Update README.md to provide detailed project description, quick start guide, and features overview"}, {"post_id": 59632, "ts": "2026-09-01T15:33:05Z", "hours": 1.1417, "text": "Refactor HTML structure and enhance CSS styles for improved UI and functionality"}, {"post_id": 59584, "ts": "2026-09-01T14:20:11Z", "hours": 0.8872, "text": "Add control panel for physics settings and object spawning"}, {"post_id": 59067, "ts": "2026-08-31T17:49:25Z", "hours": 1.1167, "text": "Enhance user interaction by adding spawn hint and improving scene setup"}, {"post_id": 58244, "ts": "2026-08-30T16:34:11Z", "hours": 0.5497, "text": "Add lighting setup and enhance ground plane creation in the 3D scene"}, {"post_id": 58197, "ts": "2026-08-30T15:33:37Z", "hours": 1.3747, "text": "Add initial HTML, CSS, and JavaScript files for 3D Physics Simulator"}]...
|
Title: 3D Physics Simulator by @RajanKC | Stardanc Title: 3D Physics Simulator by @RajanKC | Stardance
Devlogs:
Add initial HTML, CSS, and JavaScript files for 3D Physics Simulator
Add lighting setup and enhance ground plane creation in the 3D scene
Enhance user interaction by adding spawn hint and improving scene setup
Add control panel for physics settings and object spawning
Refactor HTML structure and enhance CSS styles for improved UI and functionality
Update README.md to provide detailed project description, quick start guide, and features overview
Update README.md for improved project description and gameplay instructions
Implement drag-and-drop functionality for dynamic objects in the physics simulation
Ships:
Completed the Project. Please rate it good...
|
1793296341.3159745
|
1793382741.3159745
|
|
28301
|
Irish DECA by @ngarnsworthy | Stardance
|
ngarnsworthy
|
1
|
9.71
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T15:26:17Z", "hours": 9.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I created the frontend for a LMS made for a DECA chapter. The backend still needs to be implemented. The frontend targets server side rendering whenever possible to allow for better caching!", "repo": "https://gitlab.com/ngarnsworthy/irish-deca-experiance", "demo": "https://deca.ngarnsworthy.dev"}]...
|
[{"post_id": 75884, "ts": "202 [{"post_id": 75884, "ts": "2026-10-01T14:09:35Z", "hours": 0.7106, "text": "Added a mockup register page and removed dead links"}, {"post_id": 59623, "ts": "2026-09-01T15:20:59Z", "hours": 0.3333, "text": "Added README.md and worked on a event view."}, {"post_id": 55131, "ts": "2026-08-26T16:23:18Z", "hours": 8.5639, "text": "Done Created some promotional content for the team Test taking and viewing frontend Test dashboard frontend TODO Event management More promo content User login Backend data store"}]...
|
Title: Irish DECA by @ngarnsworthy | Stardance
De Title: Irish DECA by @ngarnsworthy | Stardance
Devlogs:
Done Created some promotional content for the team Test taking and viewing frontend Test dashboard frontend TODO Event management More promo content User login Backend data store
Added README.md and worked on a event view.
Added a mockup register page and removed dead links
Ships:
I created the frontend for a LMS made for a DECA chapter. The backend still needs to be implemented. The frontend targets server side rendering whenever possible to allow for better caching!...
|
1793303832.4494326
|
1793390232.4494326
|
|
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 ....
|
1793245952.5995126
|
1793332352.5995126
|
|
56983
|
Star_Gaze by @Ramskandh_Thirandasu | Stardance
|
Ramskandh_Thirandasu
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T14:58:06Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What I Made StarGaze is an offline, real-time sky map for Web and Android. I originally tried using AI image recognition on night-sky photos, but phone cameras are too noisy for that to work. So, I rebuilt it the right way: using GPS, the clock, your phone’s sensors, and some spherical trigonometry. It fits 1,009 stars, 88 constellations, 5 planets, and the Moon into just 57 KB of data, and works completely offline. What Was Challenging Phone hardware is the biggest weak link. I had to build a system that compares your phone's magnetic reading to a global model (IGRF). Now, if a nearby metal object is messing up your heading, the app warns you instead of quietly pointing the wrong way. The most frustrating bug was realizing I wrote and tested the complex math for atmospheric refraction (which bends light near the horizon)—but never actually called the function! Fixing that one skipped line resolved the biggest visual error in the entire app. It was tempting to use heavy, ultra-precise planetary math. But I had to accept that calculating sub-arcsecond accuracy is pointless when a phone compass is naturally off by a few degrees anyway. What I’m Proud Of If you open the app at noon, it won’t show you stars. A custom sky-brightness model calculates the Sun and Moon’s position to only draw objects that are actually visible right now. Instead of just blindly thinking the math is right, I set up automated monthly tests that check the app's planetary positions directly against real NASA JPL Horizons data spanning 2021–2045.", "repo": "https://github.com/Ramskandh-Thirandasu/stargaze", "demo": "https://stargaze-rho.vercel.app/"}]...
|
[{"post_id": 59596, "ts": "202 [{"post_id": 59596, "ts": "2026-09-01T14:41:49Z", "hours": 4.9878, "text": "For V2, I focused on making StarGaze more accurate and reliable rather than just adding more features. I fixed a major horizon-positioning error caused by missing atmospheric refraction, then worked through smaller astrometric corrections including Delta-T, nutation, aberration, planetary parallax, and stellar proper motion. I also improved the compass system with calibration, Android sensor fusion, and magnetic-field checks to handle interference from nearby metal. On top of that, I added sky-visibility calculations using the Sun and Moon so stars aren’t displayed as visible when the sky should be too bright. The engine now tracks 1,009 stars, 88 constellations, 5 planets, and the Moon while staying around 57 KB, and I added automated checks against NASA JPL Horizons to catch positioning errors over time."}]...
|
Title: Star_Gaze by @Ramskandh_Thirandasu | Starda Title: Star_Gaze by @Ramskandh_Thirandasu | Stardance
Devlogs:
For V2, I focused on making StarGaze more accurate and reliable rather than just adding more features. I fixed a major horizon-positioning error caused by missing atmospheric refraction, then worked through smaller astrometric corrections including Delta-T, nutation, aberration, planetary parallax, and stellar proper motion. I also improved the compass system with calibration, Android sensor fusion, and magnetic-field checks to handle interference from nearby metal. On top of that, I added sky-visibility calculations using the Sun and Moon so stars aren’t displayed as visible when the sky should be too bright. The engine now tracks 1,009 stars, 88 constellations, 5 planets, and the Moon while staying around 57 KB, and I added automated checks against NASA JPL Horizons to catch positioning errors over time.
Ships:
What I Made StarGaze is an offline, real-time sky map for Web and Android. I originally tried using AI image recognition on night-sky photos, but phone cameras are too noisy for that to work. So, I rebuilt it the right way: using GPS, the clock, your phone’s sensors, and some spherical trigonometry. It fits 1,009 stars, 88 constellations, 5 planets, and the Moon into just 57 KB of data, and works completely offline. What Was Challenging Phone hardware is the biggest weak link. I had to build a system that compares your phone's magnetic reading to a global model (IGRF). Now, if a nearby metal object is messing up your heading, the app warns you instead of quietly pointing the wrong way. The most frustrating bug was realizing I wrote and tested the complex math for atmospheric refraction (which bends light near the horizon)—but never actually called the function! Fixing that one skipped line resolved the biggest visual error in the entire app. It was tempting to use heavy, ultra-precise planetary math. But I had to accept that calculating sub-arcsecond accuracy is pointless when a phone compass is naturally off by a few degrees anyway. What I’m Proud Of If you open the app at noon, it won’t show you stars. A custom sky-brightness model calculates the Sun and Moon’s position to only draw objects that are actually visible right now. Instead of just blindly thinking the math is right, I set up automated monthly tests that check the app's planetary positions directly against real NASA JPL Horizons data spanning 2021–2045....
|
1793245852.1890197
|
1793332252.1890197
|
|
50692
|
Plasma Speakers by @sidd | Stardance
|
sidd
|
1
|
0.0
|
135
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T14:47:36Z", "hours": 0.0, "multiplier": 5.0, "payout": 135, "blessing": "neutral", "text": "Stereo speakers that use real plasma to create sound", "repo": "https://github.com/Firestorm108/Stereo-Plasma-Speaker", "demo": ""}]...
|
[{"post_id": 56086, "ts": "202 [{"post_id": 56086, "ts": "2026-07-06T00:00:00Z", "hours": 5.0, "text": "Finished the build!"}, {"post_id": 56085, "ts": "2026-07-05T00:00:00Z", "hours": 3.0, "text": "Added in ports, did some more wiring, and made a second amp for the 555 signal. Time Spent: 3 Hours"}, {"post_id": 56084, "ts": "2026-07-04T00:00:00Z", "hours": 2.0, "text": "Added in adjustment pots, did some more wiring to the 555s, etc."}, {"post_id": 56083, "ts": "2026-07-03T00:00:00Z", "hours": 2.0, "text": "Got to work building Rev. 2, since this has to work for outpost. My wiring is a little cleaner this time and also I have the 555 timer wired differently so it should work. Time Spent: 2 Hours"}, {"post_id": 56082, "ts": "2026-07-02T00:00:00Z", "hours": 6.0, "text": "I did like the whole thing and finished it. But basically the 555 timers aren’t oscillating right, and the signal from RCA jacks is going straight to FETs. And it kinda worked. like, I heard music play through magnetic restriction of the transformer core lol, but not plasma. Time Spent: 6 Hours"}, {"post_id": 56081, "ts": "2026-07-01T00:00:00Z", "hours": 2.0, "text": "Started off with logic PSU and basic signals from the RCA jacks w/ the transistor amps."}, {"post_id": 56080, "ts": "2026-06-22T00:00:00Z", "hours": 7.0, "text": "First, I decided what the project’s scope was going to look like. High-powered transformers are usually driven through Zero-Voltage Switching or ZVS. However, when you want to adjust frequency and duty cycle, or if you just want to make a cheaper driver, you can use a 555 oscillator as the core. However, this is more inefficient and creates more heat. However, it’s what I went with because it is easier to modulate frequency of the arc based on audio signals. First, I made the ‘power supply’ for the logic components. Some people limit the primary voltage to the max the interrupter can handle, which is 16V. However, I wanted to drive my transformers at 24V. This meant I had to make my own mini regulator for 12V so that the logic components wouldn’t get fried. After that, I made a 555 timer based oscillator that took in input from an RCA jack. I then put it all together and assigned footprints. I imported the footprints in, organized it, and routed it. This was kinda a pain due to high currents through thick traces while also routing delicate signals. After that I made the BOM, and found the other non PCB parts. I think it’ll be cool and I’m like pretty sure it’s going to work. I’ll then polish the repo and submit. Time Spent: 7 Hours"}]...
|
Title: Plasma Speakers by @sidd | Stardance
Devlo Title: Plasma Speakers by @sidd | Stardance
Devlogs:
First, I decided what the project’s scope was going to look like. High-powered transformers are usually driven through Zero-Voltage Switching or ZVS. However, when you want to adjust frequency and duty cycle, or if you just want to make a cheaper driver, you can use a 555 oscillator as the core. However, this is more inefficient and creates more heat. However, it’s what I went with because it is easier to modulate frequency of the arc based on audio signals. First, I made the ‘power supply’ for the logic components. Some people limit the primary voltage to the max the interrupter can handle, which is 16V. However, I wanted to drive my transformers at 24V. This meant I had to make my own mini regulator for 12V so that the logic components wouldn’t get fried. After that, I made a 555 timer based oscillator that took in input from an RCA jack. I then put it all together and assigned footprints. I imported the footprints in, organized it, and routed it. This was kinda a pain due to high currents through thick traces while also routing delicate signals. After that I made the BOM, and found the other non PCB parts. I think it’ll be cool and I’m like pretty sure it’s going to work. I’ll then polish the repo and submit. Time Spent: 7 Hours
Started off with logic PSU and basic signals from the RCA jacks w/ the transistor amps.
I did like the whole thing and finished it. But basically the 555 timers aren’t oscillating right, and the signal from RCA jacks is going straight to FETs. And it kinda worked. like, I heard music play through magnetic restriction of the transformer core lol, but not plasma. Time Spent: 6 Hours
Got to work building Rev. 2, since this has to work for outpost. My wiring is a little cleaner this time and also I have the 555 timer wired differently so it should work. Time Spent: 2 Hours
Added in adjustment pots, did some more wiring to the 555s, etc.
Added in ports, did some more wiring, and made a second amp for the 555 signal. Time Spent: 3 Hours
Finished the build!
Ships:
Stereo speakers that use real plasma to create sound...
|
1793264196.9926336
|
1793350596.9926336
|
|
50695
|
SSTC by @sidd | Stardance
|
sidd
|
1
|
0.0
|
225
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T14:46:13Z", "hours": 0.0, "multiplier": 5.0, "payout": 225, "blessing": "neutral", "text": "A solid state Tesla coil (brought to Open Sauce!)", "repo": "https://github.com/Firestorm108/Self-Tuning-SSTC", "demo": ""}]...
|
[{"post_id": 55963, "ts": "202 [{"post_id": 55963, "ts": "2026-07-11T00:00:00Z", "hours": 18.0, "text": "I kinda pulled an all nighter because I needed this done for outpost, and I made the entire driver, wound the coils, and just finished lol. Time Spent: 18 Hours"}, {"post_id": 55932, "ts": "2026-07-11T00:00:00Z", "hours": 18.0, "text": "I kinda pulled an all nighter because I needed this done for outpost, and I made the entire driver, wound the coils, and just finished lol. Time Spent: 18 Hours"}, {"post_id": 55962, "ts": "2026-07-07T00:00:00Z", "hours": 3.0, "text": "I made the 340VDC bus power supply and the 12V logic power supply."}, {"post_id": 55931, "ts": "2026-07-07T00:00:00Z", "hours": 3.0, "text": "I made the 340VDC bus power supply and the 12V logic power supply."}, {"post_id": 55961, "ts": "2026-06-21T00:00:00Z", "hours": 4.0, "text": "I started out designing the topload, secondary, and primary in Fusion. I then made the enclosure and mounted electronics, etc. Did some polished and the CAD is finished! Yes, I am advertising my engineering account on a tesla coil :) Then I made the BOM which sucked. Since I can’t use aliexpress, I had to use amazon, digikey, and ebay which are all a pain to use compared to my dear aliexpress. I’m gonna organize the repo now then submit Time Spent: 4 Hours"}, {"post_id": 55930, "ts": "2026-06-21T00:00:00Z", "hours": 4.0, "text": "I started out designing the topload, secondary, and primary in Fusion. I then made the enclosure and mounted electronics, etc. Did some polished and the CAD is finished! Yes, I am advertising my engineering account on a tesla coil :) Then I made the BOM which sucked. Since I can’t use aliexpress, I had to use amazon, digikey, and ebay which are all a pain to use compared to my dear aliexpress. I’m gonna organize the repo now then submit Time Spent: 4 Hours"}, {"post_id": 55905, "ts": "2026-06-20T00:00:00Z", "hours": 7.0, "text": "I did footprints and layout and a bit of routing. So I wasn’t happy with my layout, mostly because I organized by components and not by circuits. So I grouped each circuit up first, and placed them together like blocks. And it came out way better and I think the routing will be nicer too. I then did the routing and it turned out looking really good! I’m happy with this, so I’m now going to move on to the coil itself. Which hopefully won’t be too much of a pain but it is going to be a pain but it’s okay because it’s for Open Sauce. I calculated the coil values with JavaTC. Which is a hard AF tool to learn considering there are zero resources on this on the internet. I figured it out though and came up with a decent coil. Time Spent: 7 Hours"}, {"post_id": 55904, "ts": "2026-06-11T00:00:00Z", "hours": 4.0, "text": "I made the schematic today. It’s inspired by LoneOceans, Steve Ward, and some other circuits. Making circuits like these and not just spamming chips like on a devboard is much much harder because you have to use actual logic. Instead of just having function blocks and adding some decoupling caps to them, each component has a very specific purpose. Like the two clamping diodes on the antenna so that it doesn’t go further than 5V. I started with the main power supply that provides 340VDC, 12VDC, and 5VDC. Which is the logic components and the main power. After that, I did the common useful 555 interrupter. The original design used an ATMEGA, but using a microcontroller in Tesla coils doesn’t really seem like it provides much of an advantage. It’s sensitive, requires programming, and has no real advantage over a 555 other than music I guess> Finally, I did the main driving circuit. It uses the interrupter to turn it on and off, feedback from the antenna, to drive the half bridge primary, I then swapped out some stuff for terminals so that it’s all easily replaceable and the heavy components aren’t on the board itself. Here’s what it looks like (now finished) Time Spent: 4 Hours"}]...
|
Title: SSTC by @sidd | Stardance
Devlogs:
I made Title: SSTC by @sidd | Stardance
Devlogs:
I made the schematic today. It’s inspired by LoneOceans, Steve Ward, and some other circuits. Making circuits like these and not just spamming chips like on a devboard is much much harder because you have to use actual logic. Instead of just having function blocks and adding some decoupling caps to them, each component has a very specific purpose. Like the two clamping diodes on the antenna so that it doesn’t go further than 5V. I started with the main power supply that provides 340VDC, 12VDC, and 5VDC. Which is the logic components and the main power. After that, I did the common useful 555 interrupter. The original design used an ATMEGA, but using a microcontroller in Tesla coils doesn’t really seem like it provides much of an advantage. It’s sensitive, requires programming, and has no real advantage over a 555 other than music I guess> Finally, I did the main driving circuit. It uses the interrupter to turn it on and off, feedback from the antenna, to drive the half bridge primary, I then swapped out some stuff for terminals so that it’s all easily replaceable and the heavy components aren’t on the board itself. Here’s what it looks like (now finished) Time Spent: 4 Hours
I did footprints and layout and a bit of routing. So I wasn’t happy with my layout, mostly because I organized by components and not by circuits. So I grouped each circuit up first, and placed them together like blocks. And it came out way better and I think the routing will be nicer too. I then did the routing and it turned out looking really good! I’m happy with this, so I’m now going to move on to the coil itself. Which hopefully won’t be too much of a pain but it is going to be a pain but it’s okay because it’s for Open Sauce. I calculated the coil values with JavaTC. Which is a hard AF tool to learn considering there are zero resources on this on the internet. I figured it out though and came up with a decent coil. Time Spent: 7 Hours
I started out designing the topload, secondary, and primary in Fusion. I then made the enclosure and mounted electronics, etc. Did some polished and the CAD is finished! Yes, I am advertising my engineering account on a tesla coil :) Then I made the BOM which sucked. Since I can’t use aliexpress, I had to use amazon, digikey, and ebay which are all a pain to use compared to my dear aliexpress. I’m gonna organize the repo now then submit Time Spent: 4 Hours
I started out designing the topload, secondary, and primary in Fusion. I then made the enclosure and mounted electronics, etc. Did some polished and the CAD is finished! Yes, I am advertising my engineering account on a tesla coil :) Then I made the BOM which sucked. Since I can’t use aliexpress, I had to use amazon, digikey, and ebay which are all a pain to use compared to my dear aliexpress. I’m gonna organize the repo now then submit Time Spent: 4 Hours
I made the 340VDC bus power supply and the 12V logic power supply.
I made the 340VDC bus power supply and the 12V logic power supply.
I kinda pulled an all nighter because I needed this done for outpost, and I made the entire driver, wound the coils, and just finished lol. Time Spent: 18 Hours
I kinda pulled an all nighter because I needed this done for outpost, and I made the entire driver, wound the coils, and just finished lol. Time Spent: 18 Hours
Ships:
A solid state Tesla coil (brought to Open Sauce!)...
|
1793264203.136272
|
1793350603.136272
|
|
50670
|
Helix by @sidd | Stardance
|
sidd
|
1
|
53.0
|
4
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T14:44:24Z", "hours": 53.0, "multiplier": 5.0, "payout": 4, "blessing": "neutral", "text": "I made an automatic transfer winder!", "repo": "https://github.com/Firestorm108/Helix/", "demo": ""}]...
|
[{"post_id": 49326, "ts": "202 [{"post_id": 49326, "ts": "2026-08-18T02:36:00Z", "hours": 0.0775, "text": "journaled in repo- submitting for review thru form!"}, {"post_id": 56071, "ts": "2026-06-29T00:00:00Z", "hours": 5.0, "text": "I printed and build and coded the electronics box, but had to replace my board with one of my old CNC boards since mine was tweaking out when it controlled the steppers and made everything vibrate like crazy and I wanted it to be reliable for open sauce."}, {"post_id": 56070, "ts": "2026-06-28T00:00:00Z", "hours": 3.0, "text": "I added the steppers, leadscrews, and more printed parts. It’s starting to come together and look rlly cool. Time Spent: 3 Hours"}, {"post_id": 56069, "ts": "2026-06-27T00:00:00Z", "hours": 4.0, "text": "I 3D printed some parts and assembled the frame out of extrusions. I unfortunately had to rebuild it since I forgot to put the V-wheel plate on. Time Spent: 4 Hours"}, {"post_id": 56068, "ts": "2026-06-25T00:00:00Z", "hours": 4.0, "text": "Today I got the board and soldered it together! It looks super cool ngl. I did some testing and coding and it seems to be working! Time Spent: 4 Hours"}, {"post_id": 56067, "ts": "2026-06-07T00:00:00Z", "hours": 2.0, "text": "I made and mounted all the electronics in an emclosure that mounts to the frame. I would say that was the most annoying part because it was mundane and tedious but its okay because it’s done now. In the morning I’ll work on polishing up the repo and making a bom and stuff but im going to sleep Time Spent: 2 Hours"}, {"post_id": 56066, "ts": "2026-06-05T00:00:00Z", "hours": 4.0, "text": "Today I added in the spooling system, which rotates back and forth on a leadscrew. This movement is constrained with a V wheel plate. So the spool rests on top, with hot swappable spool holders. It then goes through a thumbscrew compression based tensioner which feeds into the coil spinner. Time Spent: 4 Hours"}, {"post_id": 56065, "ts": "2026-05-25T00:00:00Z", "hours": 5.0, "text": "I’m glad to finally be getting to the CAD. I firstly desgined the outer frame, inspired from James Albin. After thinking for a while and literally just staring at the screen until I came up with something that worked, I rearranged the frame a bit to accomdate better. Then, made the mechanism for spinning the coil that is being wound with a stepper motor. I made an adapter that mimics a flyback core so that the bobbin may spin well. Additionally, the mounts I made for the bearing is cool since I added a little Helix. I kinda focused a lot on covering up unnecessary stuff so that it doesn’t look like a prototype. Time Spent: 5 Hours"}, {"post_id": 56063, "ts": "2026-05-25T00:00:00Z", "hours": 1.0, "text": "So after making the PCB, I realized that the microcontroller has no power source when the machine is powered by the 24V power supply. It is only powered when it is being programmed. The good news is that it only needs to be programmed once, so the USB-C port can be used for powering it after. However, there is no inbuilt voltage regulator from 24V to 5V, and there is no space to add it in right now. So, my plan is to make a seperate PCB that handles the power. So 24V flows in via the power supply. This is outputted on the other side into the PCB, however, there is a linear voltage regulator that bumps it down to 5V as well. This 5V goes to a power only USB C receptacle, which can plug into the board. Here’s a rough sketch: First I made the schematic, nothing too complex. Then I just made the PCB and did the footprints I made sure to do all THT since it would be a huge waste of money to get this assembled. It should be like $2 for the PCB and then a couple cents for the components."}, {"post_id": 56062, "ts": "2026-05-24T00:00:00Z", "hours": 8.0, "text": "I routed all the signal and power traces, following a rather unconventional layer stackup but I’m okay with it. 3 ground layers and one 24V layer, but it is what it is. It was very challenging to route but I’m very happy with the outcome. I’m like 90% certain this board is going to work, since I routed it so meticulously. I’m actually super proud since it looks kinda beautiful. Here’s the 3D image:"}, {"post_id": 56061, "ts": "2026-05-22T00:00:00Z", "hours": 4.0, "text": "First, I assigned footprints to everything based on LCSC. I really hope everything is correct since if even one part fails then the whole board is down. There’s not much more to this, it’s just a really mundane and repetitive task. After that I had more fun doing the layout of the board. That took me a while due to the crazy amount of passives, but I think it’s a good looking layout and I’m happy with it. I also routed the differential pairs of the USB-C since I wanted that to the perfect before I started routing anything else. Time Spent: 4 Hours"}, {"post_id": 56060, "ts": "2026-05-20T00:00:00Z", "hours": 5.0, "text": "I decided to base the whole machine off the RP2040 chip, since I don’t need any wireless communication and the control should be fairly simple. I started out by making the schematic for the core of the motherboard. So the flash, USB C, MCU, crystal, and caps. After that I added in the two stepper drivers (both TMC2209s) and the interfacing which is just the LCD and the rotary encoder. I’m not sure what else I would need because it seems a lot of the sensing I need can be done in software using the stepper motors. Motorized tensioning could be cool but it is also something I can do without electronics and I don’t want to overcomplicate an already tedious task. I’ll probably sleep on it and work on this tomorrow, since it’s getting late. Time Spent: 5 Hours"}, {"post_id": 56059, "ts": "2026-05-19T00:00:00Z", "hours": 4.0, "text": "I made the y axis and frame of the machine. The steppers, 750mm leadscrews, pillow bearings, and couplers were all placed. As well as the extrusions and corner brackets. This is for adjustment of pipe size and the movement of the coil throughout the length of the coil. However, I am not currently happy with the design and I also think this will be problematic to bring to open sauce. I think that it would be much better to change this to only making stuff like toroids, gate drive transformers, and especially flyback transformers. Winding entire tesla coil secondaries might not be ideal. Time Spent: 4 Hours"}, {"post_id": 56072, "ts": "2025-06-30T00:00:00Z", "hours": 4.0, "text": "I finished the build! It works and winds coils. I also added a foam based tensioner which wasn’t there originally. Time Spent: 4 Hours"}]...
|
Title: Helix by @sidd | Stardance
Devlogs:
I fini Title: Helix by @sidd | Stardance
Devlogs:
I finished the build! It works and winds coils. I also added a foam based tensioner which wasn’t there originally. Time Spent: 4 Hours
I made the y axis and frame of the machine. The steppers, 750mm leadscrews, pillow bearings, and couplers were all placed. As well as the extrusions and corner brackets. This is for adjustment of pipe size and the movement of the coil throughout the length of the coil. However, I am not currently happy with the design and I also think this will be problematic to bring to open sauce. I think that it would be much better to change this to only making stuff like toroids, gate drive transformers, and especially flyback transformers. Winding entire tesla coil secondaries might not be ideal. Time Spent: 4 Hours
I decided to base the whole machine off the RP2040 chip, since I don’t need any wireless communication and the control should be fairly simple. I started out by making the schematic for the core of the motherboard. So the flash, USB C, MCU, crystal, and caps. After that I added in the two stepper drivers (both TMC2209s) and the interfacing which is just the LCD and the rotary encoder. I’m not sure what else I would need because it seems a lot of the sensing I need can be done in software using the stepper motors. Motorized tensioning could be cool but it is also something I can do without electronics and I don’t want to overcomplicate an already tedious task. I’ll probably sleep on it and work on this tomorrow, since it’s getting late. Time Spent: 5 Hours
First, I assigned footprints to everything based on LCSC. I really hope everything is correct since if even one part fails then the whole board is down. There’s not much more to this, it’s just a really mundane and repetitive task. After that I had more fun doing the layout of the board. That took me a while due to the crazy amount of passives, but I think it’s a good looking layout and I’m happy with it. I also routed the differential pairs of the USB-C since I wanted that to the perfect before I started routing anything else. Time Spent: 4 Hours
I routed all the signal and power traces, following a rather unconventional layer stackup but I’m okay with it. 3 ground layers and one 24V layer, but it is what it is. It was very challenging to route but I’m very happy with the outcome. I’m like 90% certain this board is going to work, since I routed it so meticulously. I’m actually super proud since it looks kinda beautiful. Here’s the 3D image:
So after making the PCB, I realized that the microcontroller has no power source when the machine is powered by the 24V power supply. It is only powered when it is being programmed. The good news is that it only needs to be programmed once, so the USB-C port can be used for powering it after. However, there is no inbuilt voltage regulator from 24V to 5V, and there is no space to add it in right now. So, my plan is to make a seperate PCB that handles the power. So 24V flows in via the power supply. This is outputted on the other side into the PCB, however, there is a linear voltage regulator that bumps it down to 5V as well. This 5V goes to a power only USB C receptacle, which can plug into the board. Here’s a rough sketch: First I made the schematic, nothing too complex. Then I just made the PCB and did the footprints I made sure to do all THT since it would be a huge waste of money to get this assembled. It should be like $2 for the PCB and then a couple cents for the components.
I’m glad to finally be getting to the CAD. I firstly desgined the outer frame, inspired from James Albin. After thinking for a while and literally just staring at the screen until I came up with something that worked, I rearranged the frame a bit to accomdate better. Then, made the mechanism for spinning the coil that is being wound with a stepper motor. I made an adapter that mimics a flyback core so that the bobbin may spin well. Additionally, the mounts I made for the bearing is cool since I added a little Helix. I kinda focused a lot on covering up unnecessary stuff so that it doesn’t look like a prototype. Time Spent: 5 Hours
Today I added in the spooling system, which rotates back and forth on a leadscrew. This movement is constrained with a V wheel plate. So the spool rests on top, with hot swappable spool holders. It then goes through a thumbscrew compression based tensioner which feeds into the coil spinner. Time Spent: 4 Hours
I made and mounted all the electronics in an emclosure that mounts to the frame. I would say that was the most annoying part because it was mundane and tedious but its okay because it’s done now. In the morning I’ll work on polishing up the repo and making a bom and stuff but im going to sleep Time Spent: 2 Hours
Today I got the board and soldered it together! It looks super cool ngl. I did some testing and coding and it seems to be working! Time Spent: 4 Hours
I 3D printed some parts and assembled the frame out of extrusions. I unfortunately had to rebuild it since I forgot to put the V-wheel plate on. Time Spent: 4 Hours
I added the steppers, leadscrews, and more printed parts. It’s starting to come together and look rlly cool. Time Spent: 3 Hours
I printed and build and coded the electronics box, but had to replace my board with one of my old CNC boards since mine was tweaking out when it controlled the steppers and made everything vibrate like crazy and I wanted it to be reliable for open sauce.
journaled in repo- submitting for review thru form!
Ships:
I made an automatic transfer winder!...
|
1793264145.301408
|
1793350545.301408
|
|
41893
|
Nuclear by @Rajveer0123n | Stardance
|
Rajveer0123n
|
2
|
30.0
|
223
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T14:33:18Z", "hours": 12.0, "multiplier": 2.41, "payout": 29, "blessing": "neutral", "text": "I built a Number Guessing Challenge game with multiple difficulty levels, a clean and responsive interface, sound effects, and a strategy helper that helps players make more efficient guesses. The goal is simple: players choose a difficulty, try to identify the hidden number, and use the feedback provided after each guess to narrow down the possible range. Since the initial version, I expanded the game with three game modes — Normal, One Shot, and No Hint — to provide different levels of challenge. I also added an Achievements system with 10 unlockable achievements based on different in-game accomplishments, along with a dedicated Game Rules & Guide section to help new players understand the mechanics. The most challenging part was connecting the game logic, different modes, achievements, statistics, and UI while keeping the experience consistent and easy to use. I’m most proud of how the project has evolved from a simple guessing game into a more complete and polished experience.", "repo": "https://github.com/Rajveer0123n-BitCoin/Nuclear", "demo": "https://nuclear-three-blush.vercel.app"}, {"ship_num": 2, "ts": "2026-08-13T00:37:13Z", "hours": 18.0, "multiplier": 10.62, "payout": 194, "blessing": "neutral", "text": "I made a Number Guessing Challenge game with multiple difficulty levels, a clean UI, sound effects, and a small strategy helper that makes the game more interesting. The hardest part was connecting all the game logic with the UI and making everything feel smooth. I’m most proud of the overall experience and how polished it looks now. To test it, choose a difficulty, enter a guess, and keep playing until you find the hidden number.", "repo": "https://github.com/Rajveer0123n-BitCoin/Nuclear", "demo": "https://nuclear-three-blush.vercel.app"}]...
|
[{"post_id": 59588, "ts": "202 [{"post_id": 59588, "ts": "2026-09-01T14:28:13Z", "hours": 4.8922, "text": "GUYSSSS, I THOUGHT I WAS DONE…BUT STARSHIP SAID ADD MORE FEATURES SOOOO I WENT BACK TO WORKk I’ve now added some new game modes — Normal Mode, One Shot, and No Hint — mainly to make the game more difficult and give players more ways to play 👀🔥 I’ve ALSO added an Achievements Section, where players have to complete 10 different tasks to unlock the achievements!! ANDDD for the new players, I’ve added a proper Game Rules + Guide section so they actually know what they’re supposed to do 😭At this point the project keeps getting bigger and bigger… BUT WE KEEP GOINGGGG 🚀🔥 AND Now i think i am ready to ship again GOOOOOOOOOO"}, {"post_id": 56519, "ts": "2026-08-28T09:56:12Z", "hours": 4.0014, "text": "GUYSSSS, I THOUGHT MY PROJECT WAS FINISHED BUT THEN I WAS LIKE…NAHHHH WE CAN ADD MORE So I’ve decided to add some new modes to the project like One Try Guess, Fast Guess and a few more 👀 For now, I’m working on One Try Guess…let’s see how this turns out MORE FEATURES = MORE WORK…"}, {"post_id": 51630, "ts": "2026-08-21T12:36:52Z", "hours": 1.14, "text": "Devlog-17 SO humans I😭 I’VE RESTORED MY OLD DESIGN FROM GITHUB AND THANK GOD THIS FEATURE EXISTS 💀🙏After all that chaos, I finally got my original design back and I can FINALLYYYY say…MY PROJECT IS COMPLETE 🚀🔥NOW IT’S TIME TO SHIPPPPP 😭"}, {"post_id": 47950, "ts": "2026-08-16T06:51:53Z", "hours": 1.1556, "text": "Devlog-15 BROSSSS, I finally learned how to make READMEs from the Stardance resources 🔥 and updated my GitHub README with everything needed for SHIP!! ALSOOO, I removed all the AI-generated code from my project. I only used AI for formatting and variable names with Prettier, so the actual code is mine 😭🔥 WE’RE GETTING CLOSER TO SHIPPP 🚀"}, {"post_id": 47419, "ts": "2026-08-15T10:45:55Z", "hours": 0.8881, "text": "Devlog-16 BROOOO 😭 I literally had to CHANGE MY WHOLE DESIGN because my README was AI-made and now the officials thought the design was also AI inspired 💀 So yeah…ALL THAT EFFORT…GONE 😭 I’m honestly feeling like everything I worked on was wasted, but ig there’s nothing to do except start fixing it and make the design properly mine this time. pain. . 😭"}, {"post_id": 45949, "ts": "2026-08-12T19:22:43Z", "hours": 0.4761, "text": "Devlog-14 finally finished"}, {"post_id": 45929, "ts": "2026-08-12T18:26:33Z", "hours": 1.1928, "text": "Devlog — 12- Help Modal Progress At this pace, the whole project might actually be finished in 2–3 days"}, {"post_id": 45246, "ts": "2026-08-11T16:15:06Z", "hours": 3.1628, "text": "I have completed my stats part that’s actually statsmodal , it took way more time than i thought.."}, {"post_id": 44731, "ts": "2026-08-10T17:47:00Z", "hours": 2.2089, "text": "Devlog 10 Finally finished App.tsx 😭. I honestly don’t even know why I left it half-done in the middle, but it’s finally complete now. Right now I’m working on the Win Screen, trying different layouts and animations so it actually feels satisfying when you win. Still tweaking the design, but it’s starting to look pretty clean."}, {"post_id": 44070, "ts": "2026-08-09T16:14:50Z", "hours": 3.1528, "text": "Devlog 9 Worked on GameArea today. Added the guess input, feedback messages, a small helper for the bisect strategy, and a visual bar history for previous guesses. The game feels way more interactive now and is starting to come together nicely."}, {"post_id": 41940, "ts": "2026-08-06T13:58:29Z", "hours": 1.3217, "text": "Devlog 8 – Added Difficulty Selector and Game Area Today I completed two major UI components for the Number Guess game: DifficultySelector.tsx and GameArea.tsx. The difficulty selector now includes interactive cards for Easy, Medium, Hard, and Extreme modes, giving players a clear way to choose the challenge level. I also built the main game area, which includes the guess input system, feedback banner, bisect strategy helper, and a visual history bar to track previous guesses. These additions make the gameplay more interactive, informative, and user-friendly while improving the overall experience of the game."}, {"post_id": 41465, "ts": "2026-08-05T18:03:51Z", "hours": 0.7, "text": "Devlog 7 – Added Header Component and Difficulty Selection Today I created and improved the Header.tsx component for the Number Guess game. I added a structured header section to improve the overall layout and user experience. I also implemented difficulty selectors, allowing players to choose different challenge levels before starting the game. This adds more variety to the gameplay and creates a better experience for different types of players. With the header and difficulty system completed, the game now has a more organized interface and a more customizable gameplay experience."}, {"post_id": 40827, "ts": "2026-08-04T16:24:52Z", "hours": 1.0553, "text": "Devlog 6 – Added Victory Confetti Animation Today I created src/components/ConfettiCanvas.tsx to add a victory celebration effect to the Number Guess game. I implemented an HTML5 canvas-based confetti animation that appears when the player wins the game. The animation uses particle effects to create a more rewarding and visually exciting celebration, making the game feel more polished and interactive."}, {"post_id": 40120, "ts": "2026-08-03T14:53:06Z", "hours": 1.1533, "text": "Devlog 5 – Completed the Utils Folder Today I completed the Utils folder for the Number Guess game. I added the core game logic that handles the main gameplay mechanics, including processing guesses, checking results, and managing the game flow. I also integrated the sound system to provide audio feedback for different game events, making the overall experience more interactive and engaging. With the utility layer completed, the project now has a stronger foundation, and I can move on to refining the gameplay, improving the user experience, and polishing the final features."}, {"post_id": 39578, "ts": "2026-08-02T17:10:38Z", "hours": 1.4428, "text": "Today I completed the design phase of the Number Guess game. I focused on creating a clean and modern interface with a structured layout that is easy to use and visually appealing. The overall design is now in place, including the main game container, input section, buttons, and feedback area. With the UI completed, the next step is to implement the game logic in JavaScript, including random number generation, guess validation, score tracking, and win/lose conditions."}, {"post_id": 39235, "ts": "2026-08-02T02:09:37Z", "hours": 1.2194, "text": "Today I set up the package.json file for the project. This establishes the project configuration and creates a proper foundation for future development. Having package.json in place will make it easier to manage the project structure and add any tools or dependencies needed as the Number Guess game grows"}, {"post_id": 38157, "ts": "2026-07-31T12:23:05Z", "hours": 0.6125, "text": "Today I decided to change the direction of my project. Instead of continuing with the calculator idea, I switched to building a Number Guess game. I felt that this would be a better project for learning JavaScript logic, user interaction, and game mechanics while still creating a polished web application. I started the new project structure and created a fresh index.html file from scratch. The basic HTML layout has been set up, and this file will become the foundation of the game interface. The goal is to create a modern and engaging number guessing game with a clean design, responsive layout, and interactive gameplay. This marks a fresh start for the project, and the next steps will focus on styling the interface with CSS and implementing the core game logic in JavaScript, including random number generation, user guesses, score tracking, and feedback messages."}, {"post_id": 37639, "ts": "2026-07-30T14:58:52Z", "hours": 0.5222, "text": "Today I officially started my Nuclear calculator project for Hack Club Stardance. The first part of the work focused on setting up a clean development environment and creating the basic structure of the project. I created a new project folder, initialized a Git repository, connected it to a new GitHub repository, and configured Hackatime so that development time could be tracked correctly. I also created the initial project structure with the src and public directories, a README.md, and a .wakatime-project file. After the setup was complete, I began building the calculator interface. I created the index.html file and finished the basic HTML structure for the application. The layout includes the foundation for the calculator display, input area, and button grid, which will serve as the base for future scientific and advanced features. The goal is to build a modern, elegant calculator with a premium user interface rather than a simple basic calculator. With the project now connected to GitHub and Hackatime successfully tracking coding hours, the development environment is fully ready for the next stage. The next devlog will focus on designing the calculator’s visual appearance using CSS and implementing the first interactive functionality with JavaScript."}]...
|
Title: Nuclear by @Rajveer0123n | Stardance
Devlo Title: Nuclear by @Rajveer0123n | Stardance
Devlogs:
Today I officially started my Nuclear calculator project for Hack Club Stardance. The first part of the work focused on setting up a clean development environment and creating the basic structure of the project. I created a new project folder, initialized a Git repository, connected it to a new GitHub repository, and configured Hackatime so that development time could be tracked correctly. I also created the initial project structure with the src and public directories, a README.md, and a .wakatime-project file. After the setup was complete, I began building the calculator interface. I created the index.html file and finished the basic HTML structure for the application. The layout includes the foundation for the calculator display, input area, and button grid, which will serve as the base for future scientific and advanced features. The goal is to build a modern, elegant calculator with a premium user interface rather than a simple basic calculator. With the project now connected to GitHub and Hackatime successfully tracking coding hours, the development environment is fully ready for the next stage. The next devlog will focus on designing the calculator’s visual appearance using CSS and implementing the first interactive functionality with JavaScript.
Today I decided to change the direction of my project. Instead of continuing with the calculator idea, I switched to building a Number Guess game. I felt that this would be a better project for learning JavaScript logic, user interaction, and game mechanics while still creating a polished web application. I started the new project structure and created a fresh index.html file from scratch. The basic HTML layout has been set up, and this file will become the foundation of the game interface. The goal is to create a modern and engaging number guessing game with a clean design, responsive layout, and interactive gameplay. This marks a fresh start for the project, and the next steps will focus on styling the interface with CSS and implementing the core game logic in JavaScript, including random number generation, user guesses, score tracking, and feedback messages.
Today I set up the package.json file for the project. This establishes the project configuration and creates a proper foundation for future development. Having package.json in place will make it easier to manage the project structure and add any tools or dependencies needed as the Number Guess game grows
Today I completed the design phase of the Number Guess game. I focused on creating a clean and modern interface with a structured layout that is easy to use and visually appealing. The overall design is now in place, including the main game container, input section, buttons, and feedback area. With the UI completed, the next step is to implement the game logic in JavaScript, including random number generation, guess validation, score tracking, and win/lose conditions.
Devlog 5 – Completed the Utils Folder Today I completed the Utils folder for the Number Guess game. I added the core game logic that handles the main gameplay mechanics, including processing guesses, checking results, and managing the game flow. I also integrated the sound system to provide audio feedback for different game events, making the overall experience more interactive and engaging. With the utility layer completed, the project now has a stronger foundation, and I can move on to refining the gameplay, improving the user experience, and polishing the final features.
Devlog 6 – Added Victory Confetti Animation Today I created src/components/ConfettiCanvas.tsx to add a victory celebration effect to the Number Guess game. I implemented an HTML5 canvas-based confetti animation that appears when the player wins the game. The animation uses particle effects to create a more rewarding and visually exciting celebration, making the game feel more polished and interactive.
Devlog 7 – Added Header Component and Difficulty Selection Today I created and improved the Header.tsx component for the Number Guess game. I added a structured header section to improve the overall layout and user experience. I also implemented difficulty selectors, allowing players to choose different challenge levels before starting the game. This adds more variety to the gameplay and creates a better experience for different types of players. With the header and difficulty system completed, the game now has a more organized interface and a more customizable gameplay experience.
Devlog 8 – Added Difficulty Selector and Game Area Today I completed two major UI components for the Number Guess game: DifficultySelector.tsx and GameArea.tsx. The difficulty selector now includes interactive cards for Easy, Medium, Hard, and Extreme modes, giving players a clear way to choose the challenge level. I also built the main game area, which includes the guess input system, feedback banner, bisect strategy helper, and a visual history bar to track previous guesses. These additions make the gameplay more interactive, informative, and user-friendly while improving the overall experience of the game.
Devlog 9 Worked on GameArea today. Added the guess input, feedback messages, a small helper for the bisect strategy, and a visual bar history for previous guesses. The game feels way more interactive now and is starting to come together nicely.
Devlog 10 Finally finished App.tsx 😭. I honestly don’t even know why I left it half-done in the middle, but it’s finally complete now. Right now I’m working on the Win Screen, trying different layouts and animations so it actually feels satisfying when you win. Still tweaking the design, but it’s starting to look pretty clean.
I have completed my stats part that’s actually statsmodal , it took way more time than i thought..
Devlog — 12- Help Modal Progress At this pace, the whole project might actually be finished in 2–3 days
Devlog-14 finally finished
Devlog-16 BROOOO 😭 I literally had to CHANGE MY WHOLE DESIGN because my README was AI-made and now the officials thought the design was also AI inspired 💀 So yeah…ALL THAT EFFORT…GONE 😭 I’m honestly feeling like everything I worked on was wasted, but ig there’s nothing to do except start fixing it and make the design properly mine this time. pain. . 😭
Devlog-15 BROSSSS, I finally learned how to make READMEs from the Stardance resources 🔥 and updated my GitHub README with everything needed for SHIP!! ALSOOO, I removed all the AI-generated code from my project. I only used AI for formatting and variable names with Prettier, so the actual code is mine 😭🔥 WE’RE GETTING CLOSER TO SHIPPP 🚀
Devlog-17 SO humans I😭 I’VE RESTORED MY OLD DESIGN FROM GITHUB AND THANK GOD THIS FEATURE EXISTS 💀🙏After all that chaos, I finally got my original design back and I can FINALLYYYY say…MY PROJECT IS COMPLETE 🚀🔥NOW IT’S TIME TO SHIPPPPP 😭
GUYSSSS, I THOUGHT MY PROJECT WAS FINISHED BUT THEN I WAS LIKE…NAHHHH WE CAN ADD MORE So I’ve decided to add some new modes to the project like One Try Guess, Fast Guess and a few more 👀 For now, I’m working on One Try Guess…let’s see how this turns out MORE FEATURES = MORE WORK…
GUYSSSS, I THOUGHT I WAS DONE…BUT STARSHIP SAID ADD MORE FEATURES SOOOO I WENT BACK TO WORKk I’ve now added some new game modes — Normal Mode, One Shot, and No Hint — mainly to make the game more difficult and give players more ways to play 👀🔥 I’ve ALSO added an Achievements Section, where players have to complete 10 different tasks to unlock the achievements!! ANDDD for the new players, I’ve added a proper Game Rules + Guide section so they actually know what they’re supposed to do 😭At this point the project keeps getting bigger and bigger… BUT WE KEEP GOINGGGG 🚀🔥 AND Now i think i am ready to ship again GOOOOOOOOOO
Ships:
I made a Number Guessing Challenge game with multiple difficulty levels, a clean UI, sound effects, and a small strategy helper that makes the game more interesting. The hardest part was connecting all the game logic with the UI and making everything feel smooth. I’m most proud of the overall experience and how polished it looks now. To test it, choose a difficulty, enter a guess, and keep playing until you find the hidden number.
I built a Number Guessing Challenge game with multiple difficulty levels, a clean and responsive interface, sound effects, and a strategy helper that helps players make more efficient guesses. The goal is simple: players choose a difficulty, try to identify the hidden number, and use the feedback provided after each guess to narrow down the possible range. Since the initial version, I expanded the game with three game modes — Normal, One Shot, and No Hint — to provide different levels of challenge. I also added an Achievements system with 10 unlockable achievements based on different in-game accomplishments, along with a dedicated Game Rules & Guide section to help new players understand the mechanics. The most challenging part was connecting the game logic, different modes, achievements, statistics, and UI while keeping the experience consistent and easy to use. I’m most proud of how the project has evolved from a simple guessing game into a more complete and polished experience....
|
1793206202.071157
|
1793292602.071157
|
|
55110
|
MY WEBOS by @EVINJSUBIN | Stardance
|
EVINJSUBIN
|
2
|
8.0
|
18
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T14:26:46Z", "hours": 6.0, "multiplier": 5.53, "payout": 18, "blessing": "neutral", "text": "What I made I completely rebuilt OrbitOS from the ground up! My first version was just plain HTML/JS, but for WebOS 2, I totally leveled up and rewrote the entire operating system using React, Vite, and Tailwind CSS. What’s New (My 3+ Features): Live ISS Tracker: A custom dashboard app that pings an API every 5 seconds to get the real-time coordinates and telemetry of the International Space Station. 🛰️ Orbit AI Assistant: I built a smart AI assistant directly into the OS. New Taskbar & Window Engine: I upgraded the old floating dock to a sleek, frosted-glass full-width taskbar, and added buttery smooth window dragging physics using Framer Motion. What was challenging & What I’m proud of The hardest part was actually deploying it! I ran into the dreaded “blank white screen” bug when pushing my React app to GitHub Pages, and had to learn how to configure Vite’s base paths correctly to fix it. I’m really proud of how the ISS Tracker turned out—it perfectly fits the space theme and makes the OS feel like a real mission control dashboard. How to test it When you open the link, let the cinematic boot sequence finish, then: Click the ISS Tracker icon in the taskbar (the radar icon) to see live satellite data! Open the Terminal app and type neofetch or whoami. Try dragging and snapping the windows around—the physics feel great. Go to Settings and play around with the different themes and wallpapers! Hope you guys like it! 🌌✨", "repo": "https://github.com/EVINJSUBIN/OrbitOS", "demo": "https://evinjsubin.github.io/OrbitOS/"}, {"ship_num": 2, "ts": "2026-08-28T12:02:21Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made OrbitOS, a space-themed web operating system! The most challenging part was building the custom JavaScript physics engine to make the windows draggable while dynamically managing z-indexes. I’m incredibly proud of my unique app: a live ISS Tracker that fetches real-time coordinates from a public API. To test it, double-click the desktop icons (Notepad, Browser, or ISS Tracker). You can drag the windows around by their glowing title bars. Try typing notes (they auto-save!) or enter a custom URL in the browser’s address bar!", "repo": "https://github.com/EVINJSUBIN/OrbitOS", "demo": "https://evinjsubin.github.io/OrbitOS/"}]...
|
[{"post_id": 59322, "ts": "202 [{"post_id": 59322, "ts": "2026-09-01T01:31:32Z", "hours": 5.6764, "text": "OrbitOS 2.0 is officially ready for launch! 🚀I just completely overhauled the OS from the ground up using React, Vite, and Framer Motion. Here’s what’s new:New Taskbar: Upgraded the floating dock into a sleek, full-width frosted glass taskbar.ISS Tracker: Built a custom satellite app that pulls live telemetry and coordinates from the International Space Station every 5 seconds! 🛰️Orbit AI: Integrated a built-in smart assistant directly into the desktop.Space Theme: Fully customized the boot sequence, terminal, and styling to match a deep space aesthetic.Super hyped to finally ship this version! Let me know what you think! 🌌✨"}, {"post_id": 56634, "ts": "2026-08-28T13:58:17Z", "hours": 0.5942, "text": "orbitOS devlog update!! fixing stuff for review 🛠️my ship review just came back so im changing my code to fix some stuff they mentioned!i had to go through and clean up my code files and change how my variables were named so it made more sense to read. i also took out a bunch of comments i had left in there while i was building it so the files look cleaner now.im so glad i got the feedback so i could fix it before the final finish. everything is working perfect now and im rly proud of the ISS tracker app! 🌌"}, {"post_id": 56575, "ts": "2026-08-28T11:55:08Z", "hours": 0.315, "text": "Finally ready to ship"}, {"post_id": 56546, "ts": "2026-08-28T10:41:39Z", "hours": 0.5461, "text": "OrbitOS Devlog 2: Defying Gravity 🛸The window manager is officially online! Building a custom draggable UI from scratch was tricky but incredibly rewarding.Progress:Window UI: Designed a sleek, frosted-glass window template using HTML and CSS.The Physics: Wrote a custom JavaScript engine using mousedown, mousemove, and mouseup events. It calculates the mouse delta to perfectly reposition the window using position: absolute.Z-Index Layering: Added logic so that whenever a window is clicked, its z-index dynamically increments, ensuring the active app is always brought to the front.Next up: Building our unique mini-apps and fetching live API data! 💻"}, {"post_id": 55684, "ts": "2026-08-27T17:28:38Z", "hours": 1.2506, "text": "OrbitOS Devlog 1: The Boot Sequence 🚀We’ve laid the foundation for OrbitOS! Aiming for a futuristic aesthetic, I implemented a deep-space, neon-accented theme.Progress:Structure: Built clean HTML with a #desktop area and a #taskbar.Design: Used layered CSS radial-gradients to generate a starfield and nebula effect from scratch (no images!).Taskbar: Designed a frosted-glass UI (backdrop-filter) with neon cyan borders and a glowing Start button.Functionality: Scripted a real-time JS clock.Next up: Tackling the window manager to make apps draggable! 🌌"}]...
|
Title: MY WEBOS by @EVINJSUBIN | Stardance
Devlog Title: MY WEBOS by @EVINJSUBIN | Stardance
Devlogs:
OrbitOS Devlog 1: The Boot Sequence 🚀We’ve laid the foundation for OrbitOS! Aiming for a futuristic aesthetic, I implemented a deep-space, neon-accented theme.Progress:Structure: Built clean HTML with a #desktop area and a #taskbar.Design: Used layered CSS radial-gradients to generate a starfield and nebula effect from scratch (no images!).Taskbar: Designed a frosted-glass UI (backdrop-filter) with neon cyan borders and a glowing Start button.Functionality: Scripted a real-time JS clock.Next up: Tackling the window manager to make apps draggable! 🌌
OrbitOS Devlog 2: Defying Gravity 🛸The window manager is officially online! Building a custom draggable UI from scratch was tricky but incredibly rewarding.Progress:Window UI: Designed a sleek, frosted-glass window template using HTML and CSS.The Physics: Wrote a custom JavaScript engine using mousedown, mousemove, and mouseup events. It calculates the mouse delta to perfectly reposition the window using position: absolute.Z-Index Layering: Added logic so that whenever a window is clicked, its z-index dynamically increments, ensuring the active app is always brought to the front.Next up: Building our unique mini-apps and fetching live API data! 💻
Finally ready to ship
orbitOS devlog update!! fixing stuff for review 🛠️my ship review just came back so im changing my code to fix some stuff they mentioned!i had to go through and clean up my code files and change how my variables were named so it made more sense to read. i also took out a bunch of comments i had left in there while i was building it so the files look cleaner now.im so glad i got the feedback so i could fix it before the final finish. everything is working perfect now and im rly proud of the ISS tracker app! 🌌
OrbitOS 2.0 is officially ready for launch! 🚀I just completely overhauled the OS from the ground up using React, Vite, and Framer Motion. Here’s what’s new:New Taskbar: Upgraded the floating dock into a sleek, full-width frosted glass taskbar.ISS Tracker: Built a custom satellite app that pulls live telemetry and coordinates from the International Space Station every 5 seconds! 🛰️Orbit AI: Integrated a built-in smart assistant directly into the desktop.Space Theme: Fully customized the boot sequence, terminal, and styling to match a deep space aesthetic.Super hyped to finally ship this version! Let me know what you think! 🌌✨
Ships:
I made OrbitOS, a space-themed web operating system! The most challenging part was building the custom JavaScript physics engine to make the windows draggable while dynamically managing z-indexes. I’m incredibly proud of my unique app: a live ISS Tracker that fetches real-time coordinates from a public API. To test it, double-click the desktop icons (Notepad, Browser, or ISS Tracker). You can drag the windows around by their glowing title bars. Try typing notes (they auto-save!) or enter a custom URL in the browser’s address bar!
What I made I completely rebuilt OrbitOS from the ground up! My first version was just plain HTML/JS, but for WebOS 2, I totally leveled up and rewrote the entire operating system using React, Vite, and Tailwind CSS. What’s New (My 3+ Features): Live ISS Tracker: A custom dashboard app that pings an API every 5 seconds to get the real-time coordinates and telemetry of the International Space Station. 🛰️ Orbit AI Assistant: I built a smart AI assistant directly into the OS. New Taskbar & Window Engine: I upgraded the old floating dock to a sleek, frosted-glass full-width taskbar, and added buttery smooth window dragging physics using Framer Motion. What was challenging & What I’m proud of The hardest part was actually deploying it! I ran into the dreaded “blank white screen” bug when pushing my React app to GitHub Pages, and had to learn how to configure Vite’s base paths correctly to fix it. I’m really proud of how the ISS Tracker turned out—it perfectly fits the space theme and makes the OS feel like a real mission control dashboard. How to test it When you open the link, let the cinematic boot sequence finish, then: Click the ISS Tracker icon in the taskbar (the radar icon) to see live satellite data! Open the Terminal app and type neofetch or whoami. Try dragging and snapping the windows around—the physics feel great. Go to Settings and play around with the different themes and wallpapers! Hope you guys like it! 🌌✨...
|
1793264136.6586409
|
1793350536.6586409
|
|
29356
|
Fully 3D Printed RC Car by @Dracometro | Stardance
|
Dracometro
|
1
|
14.0
|
68
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T14:04:31Z", "hours": 14.0, "multiplier": 5.0, "payout": 68, "blessing": "neutral", "text": "I initially started this because I thought the computer bag looked cool and wanted to do something after working on my FTC bot. I did not think it would be this intricate but in the end I am very happy with the results! the first RC car was made a quick as possible and when it came to the part of building it I stopped and waited because I hated the design. Instead, I redesigned it to be better overall with more features and be something I can actually be proud of. I think the RC car ended well and I hope that you like it too!", "repo": "https://github.com/dracometro/RC-Car-For-Hackclub", "demo": ""}]...
|
[{"post_id": 59242, "ts": "202 [{"post_id": 59242, "ts": "2026-08-31T22:30:35Z", "hours": 1.75, "text": "I finished it and now I am free to publish :)"}, {"post_id": 49241, "ts": "2026-08-17T22:20:12Z", "hours": 8.8581, "text": "RC Car Final(probably) I stopped working on this for a while to work on a 26000(FTC) butterfly clone(does anyone do FTC on this platform?) I restarted, the last one kinda sucked so now I have this one which has 4 wheel drive, front and rear suspension, and smaller footprint."}, {"post_id": 25720, "ts": "2026-07-10T04:45:20Z", "hours": 0.9667, "text": "New: plates Added plates to surround the bod for minor protection. Almost everything else is the same but the numbers are slightly tweaked to work better in real life and the differential is slightly different not not needing standoffs for support."}, {"post_id": 25139, "ts": "2026-07-09T05:07:16Z", "hours": 0.8764, "text": "I cant remember to record things so t heir is another time skip. I made the front and the suspension. the universal joints suck so I switched from a double cardan joint to a dog bone since they have less internal friction."}, {"post_id": 24166, "ts": "2026-07-07T15:43:55Z", "hours": 1.1506, "text": "I did not know how hackclub recorded stuff so I did about 5 hours of work that is unrecorded but I then i fixed it. started an rc car because I don’t know what I want to do but I want the computer bag . any questions?"}]...
|
Title: Fully 3D Printed RC Car by @Dracometro | St Title: Fully 3D Printed RC Car by @Dracometro | Stardance
Devlogs:
I did not know how hackclub recorded stuff so I did about 5 hours of work that is unrecorded but I then i fixed it. started an rc car because I don’t know what I want to do but I want the computer bag . any questions?
I cant remember to record things so t heir is another time skip. I made the front and the suspension. the universal joints suck so I switched from a double cardan joint to a dog bone since they have less internal friction.
New: plates Added plates to surround the bod for minor protection. Almost everything else is the same but the numbers are slightly tweaked to work better in real life and the differential is slightly different not not needing standoffs for support.
RC Car Final(probably) I stopped working on this for a while to work on a 26000(FTC) butterfly clone(does anyone do FTC on this platform?) I restarted, the last one kinda sucked so now I have this one which has 4 wheel drive, front and rear suspension, and smaller footprint.
I finished it and now I am free to publish :)
Ships:
I initially started this because I thought the computer bag looked cool and wanted to do something after working on my FTC bot. I did not think it would be this intricate but in the end I am very happy with the results! the first RC car was made a quick as possible and when it came to the part of building it I stopped and waited because I hated the design. Instead, I redesigned it to be better overall with more features and be something I can actually be proud of. I think the RC car ended well and I hope that you like it too!...
|
1793292566.2155588
|
1793378966.2155588
|
|
56883
|
VIE-Airport by @lukas_56376 | Stardance
|
lukas_56376
|
1
|
12.22
|
16
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T13:25:21Z", "hours": 8.0, "multiplier": 2.03, "payout": 16, "blessing": "neutral", "text": "VIE-Airport is a live dashboard for Vienna International Airport (VIE/LOWW). It shows real-time arrivals and departures from the official airport flight monitor, plus current METAR and TAF weather from NOAA. You can search flights, switch between arrivals, departures and airport info, and see runway wind components calculated from the live METAR. All times are in Austrian local time; the data is for information only and not for operational flight planning.", "repo": "https://github.com/Lukas-56376/VIE-Airport", "demo": "https://lukas-56376.github.io/VIE-Airport/"}]...
|
[{"post_id": 65418, "ts": "202 [{"post_id": 65418, "ts": "2026-09-10T15:25:50Z", "hours": 0.8903, "text": "Added a proper dark/light theme toggle so the board matches both the screenshots and everyday use. The preference is stored in localStorage and respects the system setting on first visit, with no flash of the wrong theme. I also cleaned up the visual hierarchy clearer table rows, better contrast on status pills, and calmer spacing around the filters — so the UI feels less busy in both modes. Took about 1 hour and makes the dashboard much more comfortable to use day or night."}, {"post_id": 60432, "ts": "2026-09-02T19:12:35Z", "hours": 0.3975, "text": "Improved the search and filtering experience based on feedback. The search field now only looks at flight number, airline and city instead of matching against status text as well. I also added a status filter (on time, delayed, landed/departed, cancelled) and sorting options by time, status or city so the board is much easier to scan. This took about 1 hour (sadly forgot to turn on Hakatime so only 22 minutes counted) , I know right and makes the list feel a lot more useful in everyday use and a small redesign to black theme (for now…) only and making it more pop style!"}, {"post_id": 59984, "ts": "2026-09-02T02:10:24Z", "hours": 0.775, "text": "Wow, again a new Design!"}, {"post_id": 59839, "ts": "2026-09-01T20:17:19Z", "hours": 2.1594, "text": "OMG, is that a new Design? Yes, it is"}, {"post_id": 59463, "ts": "2026-09-01T10:23:43Z", "hours": 8.0322, "text": "This is V1 of VIE-Airport a real time synched (via API keys) information about Vienna International Airport!"}]...
|
Title: VIE-Airport by @lukas_56376 | Stardance
De Title: VIE-Airport by @lukas_56376 | Stardance
Devlogs:
This is V1 of VIE-Airport a real time synched (via API keys) information about Vienna International Airport!
OMG, is that a new Design? Yes, it is
Wow, again a new Design!
Improved the search and filtering experience based on feedback. The search field now only looks at flight number, airline and city instead of matching against status text as well. I also added a status filter (on time, delayed, landed/departed, cancelled) and sorting options by time, status or city so the board is much easier to scan. This took about 1 hour (sadly forgot to turn on Hakatime so only 22 minutes counted) , I know right and makes the list feel a lot more useful in everyday use and a small redesign to black theme (for now…) only and making it more pop style!
Added a proper dark/light theme toggle so the board matches both the screenshots and everyday use. The preference is stored in localStorage and respects the system setting on first visit, with no flash of the wrong theme. I also cleaned up the visual hierarchy clearer table rows, better contrast on status pills, and calmer spacing around the filters — so the UI feels less busy in both modes. Took about 1 hour and makes the dashboard much more comfortable to use day or night.
Ships:
VIE-Airport is a live dashboard for Vienna International Airport (VIE/LOWW). It shows real-time arrivals and departures from the official airport flight monitor, plus current METAR and TAF weather from NOAA. You can search flights, switch between arrivals, departures and airport info, and see runway wind components calculated from the live METAR. All times are in Austrian local time; the data is for information only and not for operational flight planning....
|
1792875202.7097607
|
1793739202.7097607
|
|
55290
|
ForgeWithShaaz by @shaaz | Stardance
|
shaaz
|
2
|
5.0
|
6
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T13:16:02Z", "hours": 4.0, "multiplier": 1.54, "payout": 6, "blessing": "neutral", "text": "I always wanted to make my own website and host it. It was fun making this website, however this website needs some updates, I will try to update it. While making this website I faced may problems, errors and much more. Now I have my own website:)", "repo": "https://github.com/shaazumer066-bot/ForGe-With-Shaaz", "demo": "https://shaazumer066-bot.github.io/ForGe-With-Shaaz/"}, {"ship_num": 2, "ts": "2026-08-28T16:08:29Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made ForgeWithShaaz where I showcase my personal projects. The designing part was so hard. I had to use ai to debug it. You can test this project and tell me what should i add here and make it look good", "repo": "https://github.com/shaazumer066-bot/ForGe-With-Shaaz", "demo": "https://shaazumer066-bot.github.io/ForGe-With-Shaaz/"}]...
|
[{"post_id": 58844, "ts": "202 [{"post_id": 58844, "ts": "2026-08-31T12:57:09Z", "hours": 2.7606, "text": "I updated my ForGeWithShaaz website. Some new designs and some new things :)"}, {"post_id": 58119, "ts": "2026-08-30T13:53:41Z", "hours": 0.9311, "text": "I am upgrading my ForGeWithShaaz website :)"}, {"post_id": 56699, "ts": "2026-08-28T15:45:53Z", "hours": 1.4483, "text": "I completed the first version of ForgeWithShaaz, my personal portfolio and project showcase website"}]...
|
Title: ForgeWithShaaz by @shaaz | Stardance
Devlo Title: ForgeWithShaaz by @shaaz | Stardance
Devlogs:
I completed the first version of ForgeWithShaaz, my personal portfolio and project showcase website
I am upgrading my ForGeWithShaaz website :)
I updated my ForGeWithShaaz website. Some new designs and some new things :)
Ships:
I made ForgeWithShaaz where I showcase my personal projects. The designing part was so hard. I had to use ai to debug it. You can test this project and tell me what should i add here and make it look good
I always wanted to make my own website and host it. It was fun making this website, however this website needs some updates, I will try to update it. While making this website I faced may problems, errors and much more. Now I have my own website:)...
|
1792878584.9476523
|
1793742584.9476523
|
|
56971
|
shaaz-bot by @shaaz | Stardance
|
shaaz
|
1
|
2.31
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T13:08:19Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "It was really amazing experience building my own slack bot(shaaz-bot) which replies 24/7. The challenging part was giving commands to terminal and writing javascript, however this was more fun btw :)", "repo": "https://github.com/shaazumer066-bot/shaaz-bot", "demo": "https://app.slack.com/client/E09V59WQY1E/C0P5NE354?skip_today=1"}]...
|
[{"post_id": 59717, "ts": "202 [{"post_id": 59717, "ts": "2026-09-01T17:20:40Z", "hours": 0.3114, "text": "Bug Fixes Today I fixed two bugs in Shaaz Bot. Fixed the /shaaz-bot-help command so all commands are listed correctly. Fixed the /shaaz-bot-ping! command by removing the ! and changing it to /shaaz-bot-ping . Tested both commands in Slack after fixing them."}, {"post_id": 59547, "ts": "2026-09-01T13:05:29Z", "hours": 1.5056, "text": "shaaz-bot is a simple bot built with Node.js, Slack Bot and Axios. It provides fun commands and useful utilities such as jokes, cat facts, trivia, quotes, and weather information."}]...
|
Title: shaaz-bot by @shaaz | Stardance
Devlogs:
s Title: shaaz-bot by @shaaz | Stardance
Devlogs:
shaaz-bot is a simple bot built with Node.js, Slack Bot and Axios. It provides fun commands and useful utilities such as jokes, cat facts, trivia, quotes, and weather information.
Bug Fixes Today I fixed two bugs in Shaaz Bot. Fixed the /shaaz-bot-help command so all commands are listed correctly. Fixed the /shaaz-bot-ping! command by removing the ! and changing it to /shaaz-bot-ping . Tested both commands in Slack after fixing them.
Ships:
It was really amazing experience building my own slack bot(shaaz-bot) which replies 24/7. The challenging part was giving commands to terminal and writing javascript, however this was more fun btw :)...
|
1792875229.4563153
|
1793739229.4563153
|
|
54599
|
cosmic-view by @folk0297 | Stardance
|
folk0297
|
1
|
6.43
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T12:34:03Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made Cosmic View, a website that uses NASA’s Astronomy Picture of the Day API to bring a different view of the universe to the screen. You can explore APODs by date, move between previous and next days, check out a random APOD, and view the image, title, description, and other details. it was alot of fun making it and i really enjoyed this experience but it does’nt mean it was easy. i didn’t knew much of javascript so i learned it from beginning i from tutorials, tips from friends and ai too,the most challenging part was connecting the NASA API and making sure the data was displayed correctly on the website. I ran into a few JavaScript and HTML issues, especially small ID mismatches that caused parts of the page to break. I’m most proud that I built the project myself and got all the features working together. I also like how the final design turned out because it feels like a proper space-themed website rather than just a basic API project. to test my projects: live: https://folks0297.github.io/Cosmic-View/ github: https://github.com/folks0297/Cosmic-View", "repo": "https://github.com/folks0297/Cosmic-View", "demo": "https://folks0297.github.io/Cosmic-View/"}]...
|
[{"post_id": 60248, "ts": "202 [{"post_id": 60248, "ts": "2026-09-02T14:37:47Z", "hours": 0.4331, "text": "for some reason stardance told that i have made more that 30% of css with AI after spending ALLAT of time on it!! so i made it bit minimalistic and after that i idk why my demo link stopped working and kept opening my readme files ,i was genuinely fed up so made a new repository and now its working fine i guess if you guys want to check out here is the link https://github.com/folks0297/Cosmic-View"}, {"post_id": 59524, "ts": "2026-09-01T12:07:46Z", "hours": 6.2836, "text": "Built a NASA picture viewer from scratch. Shows the daily space picture with title and description.i have added a random button to just get a random picture from NASA and it description from past.if you like you check any previous APODs from previous button. it was pretty great experience for me as learned so much , i knew css and html pretty good but i barely used javascript before this so it took me a while to get hands on it . i used some youtube tutorials and some ai too(just for debugging) to get help in javascript because when i finished my project i was having some issues in showing of pictures and it turned out to be just a typo error ,but anyways im still proud of this project because it looks so cool!! i spend a lot of time on styling it on css :) i hope you guys like it"}]...
|
Title: cosmic-view by @folk0297 | Stardance
Devlo Title: cosmic-view by @folk0297 | Stardance
Devlogs:
Built a NASA picture viewer from scratch. Shows the daily space picture with title and description.i have added a random button to just get a random picture from NASA and it description from past.if you like you check any previous APODs from previous button. it was pretty great experience for me as learned so much , i knew css and html pretty good but i barely used javascript before this so it took me a while to get hands on it . i used some youtube tutorials and some ai too(just for debugging) to get help in javascript because when i finished my project i was having some issues in showing of pictures and it turned out to be just a typo error ,but anyways im still proud of this project because it looks so cool!! i spend a lot of time on styling it on css :) i hope you guys like it
for some reason stardance told that i have made more that 30% of css with AI after spending ALLAT of time on it!! so i made it bit minimalistic and after that i idk why my demo link stopped working and kept opening my readme files ,i was genuinely fed up so made a new repository and now its working fine i guess if you guys want to check out here is the link https://github.com/folks0297/Cosmic-View
Ships:
I made Cosmic View, a website that uses NASA’s Astronomy Picture of the Day API to bring a different view of the universe to the screen. You can explore APODs by date, move between previous and next days, check out a random APOD, and view the image, title, description, and other details. it was alot of fun making it and i really enjoyed this experience but it does’nt mean it was easy. i didn’t knew much of javascript so i learned it from beginning i from tutorials, tips from friends and ai too,the most challenging part was connecting the NASA API and making sure the data was displayed correctly on the website. I ran into a few JavaScript and HTML issues, especially small ID mismatches that caused parts of the page to break. I’m most proud that I built the project myself and got all the features working together. I also like how the final design turned out because it feels like a proper space-themed website rather than just a basic API project. to test my projects: live: https://folks0297.github.io/Cosmic-View/ github: https://github.com/folks0297/Cosmic-View...
|
1793249718.7858326
|
1793336118.7858326
|
|
40474
|
Portfolio Platformer by @porgsrpogs | Stardance
|
porgsrpogs
|
1
|
19.0
|
303
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T12:24:05Z", "hours": 19.0, "multiplier": 16.0, "payout": 303, "blessing": "neutral", "text": "I created a unique portfolio by implementing facts about myself, past work and contact information into a 2d platformer game. This was my first time making any sort of web based game application which meant a lot of the development in this site was new to me. I’m proud to have made a portfolio that can stand out a sea of similar sites and reflects my personality and creative thinking. To move around you can use WASD, Arrow keys, or the on screen controls. Feel free to explore the top right buttons which help you to further enjoy your experience.", "repo": "https://github.com/POrGSrPOGS/finnb-co-uk", "demo": "https://finnb.uk/"}]...
|
[{"post_id": 59530, "ts": "202 [{"post_id": 59530, "ts": "2026-09-01T12:17:29Z", "hours": 2.5831, "text": "Final changes before shipping Changelog Added a README Stopped text being selectable on buttons which could diminish the experience for mobile users Added contact information Made respawning smoother"}, {"post_id": 58057, "ts": "2026-08-30T12:25:39Z", "hours": 3.3083, "text": "Spectate, freeze, WASD support, and portals I’ve made a lot of progress (More than the 3 hours that was recorded) and I’ve taken in some suggestions as well as some new stuff I personally wanted to add. Changelog Fixed popups showing if you held down on buttons too long Added portals to view my past projects Added more descriptions about how I code (It is a portfolio after all) Improved text scaling for different screen sizes Made text more readable Reduced zoom to prevent motion sickness Moved buttons that were being made in Home.jsx into /components Refactored other things like detecting keys being held down Added WASD support as well as the existing arrow key support Added a spectate button to disable collisions, letting you move around quickly Added a freeze button to make reading easier Try it out here: My Portfolio Don’t be afraid to make suggestions"}, {"post_id": 36441, "ts": "2026-07-28T15:53:13Z", "hours": 4.4492, "text": "Devlog 3 (HUGE CHANGES) Started creating my portfolio (I was planning on making the platformer before making it a portfolio but the platformer was way too quick to make Made it a dark mode theme Added kill parts Added respawn button Added buttons to move on mobile Fixed sizes not scaling correctly for different screen sizes Text autoscales to fit platforms Try for yourself: Here"}, {"post_id": 36010, "ts": "2026-07-27T20:29:54Z", "hours": 5.2686, "text": "Devlog 2 (MOVING PLATFORMS) Factorised the home page into a smaller file with 4 helpers scripts for collissions, platforms, the player, and the world. Added platforms which move in a circular motion Fixed bug where the player would fall off the those platforms Switched the platforms that move in circles to take an input of degrees instead of radians in the config table to make it more readable and easily customisable NOTE: I’m focusing on creating all the functions for different parts so that building the map becomes easy Made it so you can add text labels to platforms Link (NOT MOBILE FRIENDLY) : Click Here"}, {"post_id": 35661, "ts": "2026-07-27T07:50:01Z", "hours": 3.3047, "text": "Devlog 1 (PLATFORMER BASICS) (My first platformer so learning the basics) Created a basic web platformer using phaser Gave arrow keys control over the player (WASD and mobile don’t work YET) Experimented with static platforms Created a moving platform Added camera following to allow for a platformer world that’s bigger than the screen Added custom textures to allow for sprites rather than dynamically created parts/player using Phaser’s built in rectangles, which allowed for the addition of collision groups View my progress at finnb.co.uk"}]...
|
Title: Portfolio Platformer by @porgsrpogs | Stard Title: Portfolio Platformer by @porgsrpogs | Stardance
Devlogs:
Devlog 1 (PLATFORMER BASICS) (My first platformer so learning the basics) Created a basic web platformer using phaser Gave arrow keys control over the player (WASD and mobile don’t work YET) Experimented with static platforms Created a moving platform Added camera following to allow for a platformer world that’s bigger than the screen Added custom textures to allow for sprites rather than dynamically created parts/player using Phaser’s built in rectangles, which allowed for the addition of collision groups View my progress at finnb.co.uk
Devlog 2 (MOVING PLATFORMS) Factorised the home page into a smaller file with 4 helpers scripts for collissions, platforms, the player, and the world. Added platforms which move in a circular motion Fixed bug where the player would fall off the those platforms Switched the platforms that move in circles to take an input of degrees instead of radians in the config table to make it more readable and easily customisable NOTE: I’m focusing on creating all the functions for different parts so that building the map becomes easy Made it so you can add text labels to platforms Link (NOT MOBILE FRIENDLY) : Click Here
Devlog 3 (HUGE CHANGES) Started creating my portfolio (I was planning on making the platformer before making it a portfolio but the platformer was way too quick to make Made it a dark mode theme Added kill parts Added respawn button Added buttons to move on mobile Fixed sizes not scaling correctly for different screen sizes Text autoscales to fit platforms Try for yourself: Here
Spectate, freeze, WASD support, and portals I’ve made a lot of progress (More than the 3 hours that was recorded) and I’ve taken in some suggestions as well as some new stuff I personally wanted to add. Changelog Fixed popups showing if you held down on buttons too long Added portals to view my past projects Added more descriptions about how I code (It is a portfolio after all) Improved text scaling for different screen sizes Made text more readable Reduced zoom to prevent motion sickness Moved buttons that were being made in Home.jsx into /components Refactored other things like detecting keys being held down Added WASD support as well as the existing arrow key support Added a spectate button to disable collisions, letting you move around quickly Added a freeze button to make reading easier Try it out here: My Portfolio Don’t be afraid to make suggestions
Final changes before shipping Changelog Added a README Stopped text being selectable on buttons which could diminish the experience for mobile users Added contact information Made respawning smoother
Ships:
I created a unique portfolio by implementing facts about myself, past work and contact information into a 2d platformer game. This was my first time making any sort of web based game application which meant a lot of the development in this site was new to me. I’m proud to have made a portfolio that can stand out a sea of similar sites and reflects my personality and creative thinking. To move around you can use WASD, Arrow keys, or the on screen controls. Feel free to explore the top right buttons which help you to further enjoy your experience....
|
1793253325.083373
|
1793339725.083373
|
|
28941
|
OwOS by @Axwabo | Stardance
|
Axwabo
|
1
|
11.41
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T12:03:12Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "this is a simple “operating system” that runs in your browser! made with Blazor (cuz i like seeing sharp ahaha) which complicated some things, but it could be worse right now it includes the following: date and time a notepad that uses localStorage to save data (you can open multiple of them at once) meta menu (“start menu,” useful when the icons are covered) an image of 4 FLIRTs :3 (you need to open the “file”) task manager (taskbar) that is very slightly buggy but it lets you restore windows that had been minimized making the task manager was a bit of a headache due to the unpredictable nature of C# delegates it works for bringing a window to the front i used the <dialog> HTML element in several places because i didn’t want to reinvent the wheel (not a lot of people know about this somehow), though handling interactions outside of the area of non-modal dialogs is something i’ll have to look into later dialog sizes should be restricted but ugh", "repo": "https://github.com/Axwabo/OwOS", "demo": "https://axwabo.github.io/OwOS/"}]...
|
[{"post_id": 62517, "ts": "202 [{"post_id": 62517, "ts": "2026-09-05T22:36:57Z", "hours": 2.4736, "text": "my final devlog of Stardance i’m turning 19 in a few hours so this is my last thingy :3 brave browser ate my cursor so i can’t really see where i’m clicking lol completed BaSL integration: the window now scrolls automatically + i’ve improved the UX with a Send and Terminate button moved enter key handling to JavaScript because for some reason, .NET doesn’t get the input value before you press enter (so the input was percieved as empty on keydown) updated Nowotes with new file dialogs took a bit to refactor the code, i wanted a common component that does most stuff the SaveFileDialog and OpenFileDialog have only a few lines of code thanks to this the dialogs don’t look amazing, yeah, but you can tell directories apart by their trailing slash you can use the input field similarly to actual file dialogs: enter a directory in the current one go to a directory by specifying its full path open/save by providing a filename with no trailing slash, no .. (idk if the .. check works tbh) added an analog clock cuz i didn’t want to deal with window maximizing tiny detail: usename is now in the meta menu, which looks similar to how KDE handles it fixed file system restoration by using the location origin instad of the href fixed task manager buttons not being able to minimize their respective window"}, {"post_id": 61584, "ts": "2026-09-04T15:48:15Z", "hours": 2.9325, "text": "BaSL integration almost complete terminal :333 i’ve added my very basic Bash-like shell project as a program! since BaSL written in .NET, i can “just reference it,” and it works (not every package works out of the box in Blazor WebAssembly) on the left you can see the version without escape sequence parsing on the right, it parsed the output properly currently, it only supports setting/resetting bold mode and 8 types of foregrounds (black, red, green, yellow, blue, magenta, cyan, white) for some reason, using an inline <pre> tag sometimes inserts a newline even though it’s not in the content string… idk 😭 the other feature i added in these 3 hours was cache-based file storage (yes, the Cache API) it only saves files in the /home/user directory the files will be loaded on startup since there’s no filesystem watcher in BaSL, saving has to be manually triggered either via the terminal or from the meta menu i’ve still yet to make it so concurrent sync operations cannot occur it would also be nice to have sync -f so it rewrites the whole cache (mode changes are not detected yet) for some reason, IJSStreamReference didn’t marshal properly in an object, so i tried use byte[] from an Uint8Array which also didn’t work… string it is, hopefully it doesn’t mess up binary content gotta integrate the file system with Nowotes"}, {"post_id": 59461, "ts": "2026-09-01T10:20:53Z", "hours": 3.1578, "text": "i had a look at the guide, and decided that i don’t want to use z-index instead, i use ObservableCollection.Move to bring a window to the front window state stays intact because i specify @key changing the window order has a slight side effect: the task manager (taskbar) is also reordered; ordering by Id fixes this issue (IDs are v7 Guids which start with a timestamp) the welcome screen is now more descriptive implemented the meta menu (start menu), it’s pretty simple atm, only includes desktop programs the task manger now shows which window is focused (topmost and not minimized) added a notepad with a simple textarea element it saves data to localStorage code is horrible but does it matter? x3 deployed to GitHub Pages, hopefully this will qualify for the mission"}, {"post_id": 58810, "ts": "2026-08-31T12:08:09Z", "hours": 1.6219, "text": "genuinely forgot some of the things i’ve done, probably styling anyways, now you can open windows and close them properly! i’ll be adding a few more desktop icons and apps finally figured out the architecture i like the WindowManager has an ObservableCollection, so it’ll notify other components if a window is added or removed automatically the task manager (taskbar for losedows users) needs to be updated a second time because the window’s init method (which sets the title) only gets called the “next frame” (in Unity terms at least, idk how to say it lol) gonna need a to add minimizing windows, and a “start menu” i was also thinking of creating a simple notepad that saves content to local storage"}, {"post_id": 19425, "ts": "2026-06-30T19:04:06Z", "hours": 0.5356, "text": "was debating whether to use js interop to do window dragging, but plain JS is enough layouts turned out to be wrong for windows, so i created a simple Window base component instead window dragging now works also added a date display"}, {"post_id": 19400, "ts": "2026-06-30T18:27:51Z", "hours": 0.5025, "text": "finally got something working, creating an OS using Blazor (yes, it will be painful) i spent a lot of time trying to think about how to even start, then removing default assets, doing some basic styling there is now a very basic taskbar with a working clock"}]...
|
Title: OwOS by @Axwabo | Stardance
Devlogs:
final Title: OwOS by @Axwabo | Stardance
Devlogs:
finally got something working, creating an OS using Blazor (yes, it will be painful) i spent a lot of time trying to think about how to even start, then removing default assets, doing some basic styling there is now a very basic taskbar with a working clock
was debating whether to use js interop to do window dragging, but plain JS is enough layouts turned out to be wrong for windows, so i created a simple Window base component instead window dragging now works also added a date display
genuinely forgot some of the things i’ve done, probably styling anyways, now you can open windows and close them properly! i’ll be adding a few more desktop icons and apps finally figured out the architecture i like the WindowManager has an ObservableCollection, so it’ll notify other components if a window is added or removed automatically the task manager (taskbar for losedows users) needs to be updated a second time because the window’s init method (which sets the title) only gets called the “next frame” (in Unity terms at least, idk how to say it lol) gonna need a to add minimizing windows, and a “start menu” i was also thinking of creating a simple notepad that saves content to local storage
i had a look at the guide, and decided that i don’t want to use z-index instead, i use ObservableCollection.Move to bring a window to the front window state stays intact because i specify @key changing the window order has a slight side effect: the task manager (taskbar) is also reordered; ordering by Id fixes this issue (IDs are v7 Guids which start with a timestamp) the welcome screen is now more descriptive implemented the meta menu (start menu), it’s pretty simple atm, only includes desktop programs the task manger now shows which window is focused (topmost and not minimized) added a notepad with a simple textarea element it saves data to localStorage code is horrible but does it matter? x3 deployed to GitHub Pages, hopefully this will qualify for the mission
BaSL integration almost complete terminal :333 i’ve added my very basic Bash-like shell project as a program! since BaSL written in .NET, i can “just reference it,” and it works (not every package works out of the box in Blazor WebAssembly) on the left you can see the version without escape sequence parsing on the right, it parsed the output properly currently, it only supports setting/resetting bold mode and 8 types of foregrounds (black, red, green, yellow, blue, magenta, cyan, white) for some reason, using an inline <pre> tag sometimes inserts a newline even though it’s not in the content string… idk 😭 the other feature i added in these 3 hours was cache-based file storage (yes, the Cache API) it only saves files in the /home/user directory the files will be loaded on startup since there’s no filesystem watcher in BaSL, saving has to be manually triggered either via the terminal or from the meta menu i’ve still yet to make it so concurrent sync operations cannot occur it would also be nice to have sync -f so it rewrites the whole cache (mode changes are not detected yet) for some reason, IJSStreamReference didn’t marshal properly in an object, so i tried use byte[] from an Uint8Array which also didn’t work… string it is, hopefully it doesn’t mess up binary content gotta integrate the file system with Nowotes
my final devlog of Stardance i’m turning 19 in a few hours so this is my last thingy :3 brave browser ate my cursor so i can’t really see where i’m clicking lol completed BaSL integration: the window now scrolls automatically + i’ve improved the UX with a Send and Terminate button moved enter key handling to JavaScript because for some reason, .NET doesn’t get the input value before you press enter (so the input was percieved as empty on keydown) updated Nowotes with new file dialogs took a bit to refactor the code, i wanted a common component that does most stuff the SaveFileDialog and OpenFileDialog have only a few lines of code thanks to this the dialogs don’t look amazing, yeah, but you can tell directories apart by their trailing slash you can use the input field similarly to actual file dialogs: enter a directory in the current one go to a directory by specifying its full path open/save by providing a filename with no trailing slash, no .. (idk if the .. check works tbh) added an analog clock cuz i didn’t want to deal with window maximizing tiny detail: usename is now in the meta menu, which looks similar to how KDE handles it fixed file system restoration by using the location origin instad of the href fixed task manager buttons not being able to minimize their respective window
Ships:
this is a simple “operating system” that runs in your browser! made with Blazor (cuz i like seeing sharp ahaha) which complicated some things, but it could be worse right now it includes the following: date and time a notepad that uses localStorage to save data (you can open multiple of them at once) meta menu (“start menu,” useful when the icons are covered) an image of 4 FLIRTs :3 (you need to open the “file”) task manager (taskbar) that is very slightly buggy but it lets you restore windows that had been minimized making the task manager was a bit of a headache due to the unpredictable nature of C# delegates it works for bringing a window to the front i used the <dialog> HTML element in several places because i didn’t want to reinvent the wheel (not a lot of people know about this somehow), though handling interactions outside of the area of non-modal dialogs is something i’ll have to look into later dialog sizes should be restricted but ugh...
|
1793310772.2512589
|
1793397172.2512589
|
|
40530
|
Personal e-portfolio website by @avielfernando | S Personal e-portfolio website by @avielfernando | Stardance...
|
avielfernando
|
1
|
18.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T11:22:28Z", "hours": 18.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I used Html and CSS to create this website. The satisfaction through making this website - I have to admit that I did use Ai to help me code this website with me copying down some of the responses but most of the work like the HTML and Java was mainly me but the CSS was very hard and It would have taken ages like 100 - 200 hours to get done. As an Aussie student it is implicably impossible for me to make this website especially while balancing school. I hate CSS - but it’s something we all have to learn I guess - most of the crazy animations were ai driven but colours, fonts and basic code was me . The website is a personal place holder for my future resumes. and job applications.", "repo": "https://github.com/GENESIS-LXN/Personal-portfolio", "demo": "https://genesis-lxn.github.io/aviel-portfolio/"}]...
|
[{"post_id": 59478, "ts": "202 [{"post_id": 59478, "ts": "2026-09-01T10:46:02Z", "hours": 1.4625, "text": "really editing and final touches on website ready for shipping ! - Now all thats left is to add images - but thats something I want to do overtime some of these projects are place holders for other projects . and setting up to ship this project"}, {"post_id": 39413, "ts": "2026-08-02T11:16:23Z", "hours": 2.3817, "text": "Hello World »>I worked on making the game part of my website and it was alot of javascript. also one my previour hours logged i also worked on my website - here it is its just the contact part also I made a game - called robotics lab to understand what the average engineering room looks like. - > i also worked on a custon cursor and like animations with the cursor to add that extra bit - also the background is animated - here is a sneak peak of the game code but - its just rectangles as place holders - ART IS SOOOO TIME CONSUMING - and i also can’t figure how to log it on this thing : ( but don’t worry i will not give up . cya :)"}, {"post_id": 38838, "ts": "2026-08-01T12:21:33Z", "hours": 1.9908, "text": "Hello World, did a lot of exploring and used ai to make a mock up of how a website would work - so using this as a learning tool i’m gonna personally try to make my version of what ai made but learning form what the ai made what i’m about to show you is ai’s but i have an idea to make a red and like really soft website - taking an inspiration from fauna robotics- ignore the emojis - I don’t know why they are there."}, {"post_id": 38202, "ts": "2026-07-31T14:29:15Z", "hours": 1.3719, "text": "Hello World , Worked on a bit of java-script to help with the websites custom cursor and scrolling abilities to add that touch, I also worked on the contact section * java script was AI heavy as I do not know the language and am still learning, originally i wanted this project to be flask but in order to get the detail the animations and the level I would like I have to use java script -"}, {"post_id": 37579, "ts": "2026-07-30T12:31:08Z", "hours": 2.3878, "text": "Hello World - I did More coding - on HTML I realised I messed up the liquid glass effect and my code was very fuzzeled so I had to delete it - RIP - so I then kept locked in for a straight 2 hrs trying to fix my code and am on sleep deprivation so - * if i mesed up any word or if my writing looks very rushed blame my hard rock pillow. - I did end up getting 97% of the HTML file done before I got to finally sleep so stay tuned until I update css - hopefully by tomorrow ill see some results."}, {"post_id": 36958, "ts": "2026-07-29T11:34:58Z", "hours": 3.0297, "text": "Hello World ! I worked on adding this thing called glassmorphism effects I really wanted to elevate the sight so I decided to not do a css file and just od straight HTML and this was to make things a bit more simpler when adding animations and more features* I found out this thing the more time something takes the more costly it is and more difficult it is, and its all about - cost ,time , difficulty 3 principles to any good project the annoying thing is glass morphism is very difficult and I had to change a lot of my code on top of that I had to relearn some of the stuff as I am not using flask any more* btw i’m sorry ill try by tommorrow to give u guys an update of he working site. Thanks everyone for the support! ^ btw indentions are soooo annoying."}, {"post_id": 36350, "ts": "2026-07-28T12:24:44Z", "hours": 1.6572, "text": "Hello World - I worked on upgrading CSS file and html files and made a better search bar using stick which makes the scroll bar follow you for easier navigation I also tried to spread info but I couldnt debugg the issue making this problem where some of the sides of the info are not in the view - * sorry - still debugging …."}, {"post_id": 36237, "ts": "2026-07-28T05:52:45Z", "hours": 2.4028, "text": "I was working on creating a basic version of the app with touch buttons and linkings and I also had problems with linking the css file with the HTML file so I problem solved it took so long to link but here is v2 but still very basic. With working linking updated ui and a bit more detail. next steps would be to add hero buttons add more creative ui decisions and adding more interactions , buttons and probably even an interactive game to get to know a bit about me."}, {"post_id": 36032, "ts": "2026-07-27T21:04:59Z", "hours": 1.0064, "text": "Hello World . Today I worked on the basics of HTML and making a basic home-page . Im using this package called flask to help me use python code. This is the page I made."}]...
|
Title: Personal e-portfolio website by @avielferna Title: Personal e-portfolio website by @avielfernando | Stardance
Devlogs:
Hello World . Today I worked on the basics of HTML and making a basic home-page . Im using this package called flask to help me use python code. This is the page I made.
I was working on creating a basic version of the app with touch buttons and linkings and I also had problems with linking the css file with the HTML file so I problem solved it took so long to link but here is v2 but still very basic. With working linking updated ui and a bit more detail. next steps would be to add hero buttons add more creative ui decisions and adding more interactions , buttons and probably even an interactive game to get to know a bit about me.
Hello World - I worked on upgrading CSS file and html files and made a better search bar using stick which makes the scroll bar follow you for easier navigation I also tried to spread info but I couldnt debugg the issue making this problem where some of the sides of the info are not in the view - * sorry - still debugging ….
Hello World ! I worked on adding this thing called glassmorphism effects I really wanted to elevate the sight so I decided to not do a css file and just od straight HTML and this was to make things a bit more simpler when adding animations and more features* I found out this thing the more time something takes the more costly it is and more difficult it is, and its all about - cost ,time , difficulty 3 principles to any good project the annoying thing is glass morphism is very difficult and I had to change a lot of my code on top of that I had to relearn some of the stuff as I am not using flask any more* btw i’m sorry ill try by tommorrow to give u guys an update of he working site. Thanks everyone for the support! ^ btw indentions are soooo annoying.
Hello World - I did More coding - on HTML I realised I messed up the liquid glass effect and my code was very fuzzeled so I had to delete it - RIP - so I then kept locked in for a straight 2 hrs trying to fix my code and am on sleep deprivation so - * if i mesed up any word or if my writing looks very rushed blame my hard rock pillow. - I did end up getting 97% of the HTML file done before I got to finally sleep so stay tuned until I update css - hopefully by tomorrow ill see some results.
Hello World , Worked on a bit of java-script to help with the websites custom cursor and scrolling abilities to add that touch, I also worked on the contact section * java script was AI heavy as I do not know the language and am still learning, originally i wanted this project to be flask but in order to get the detail the animations and the level I would like I have to use java script -
Hello World, did a lot of exploring and used ai to make a mock up of how a website would work - so using this as a learning tool i’m gonna personally try to make my version of what ai made but learning form what the ai made what i’m about to show you is ai’s but i have an idea to make a red and like really soft website - taking an inspiration from fauna robotics- ignore the emojis - I don’t know why they are there.
Hello World »>I worked on making the game part of my website and it was alot of javascript. also one my previour hours logged i also worked on my website - here it is its just the contact part also I made a game - called robotics lab to understand what the average engineering room looks like. - > i also worked on a custon cursor and like animations with the cursor to add that extra bit - also the background is animated - here is a sneak peak of the game code but - its just rectangles as place holders - ART IS SOOOO TIME CONSUMING - and i also can’t figure how to log it on this thing : ( but don’t worry i will not give up . cya :)
really editing and final touches on website ready for shipping ! - Now all thats left is to add images - but thats something I want to do overtime some of these projects are place holders for other projects . and setting up to ship this project
Ships:
I used Html and CSS to create this website. The satisfaction through making this website - I have to admit that I did use Ai to help me code this website with me copying down some of the responses but most of the work like the HTML and Java was mainly me but the CSS was very hard and It would have taken ages like 100 - 200 hours to get done. As an Aussie student it is implicably impossible for me to make this website especially while balancing school. I hate CSS - but it’s something we all have to learn I guess - most of the crazy animations were ai driven but colours, fonts and basic code was me . The website is a personal place holder for my future resumes. and job applications....
|
1793260064.2480292
|
1793346464.2480292
|
|
55310
|
Simple Calculator by @princekumar | Stardance
|
princekumar
|
1
|
5.0
|
3
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T11:11:58Z", "hours": 5.0, "multiplier": 1.08, "payout": 3, "blessing": "neutral", "text": "Project: Simple Calculator Day 1 - Idea and HTML I wanted to make something simple that actually works. I made a basic layout with a div calculator , a h1 and an input with readonly as display. Then I made 20 buttons inside a div buttons . I used onclick=\"appendValue()\" for all number buttons so I don’t have to write many functions. I also added AC, backspace ⌫, % and Copy button at the end. Day 2 - CSS For styling I used flex to center the calculator in body, background #111827 . Calculator box is #1f2937 with 340px width and border-radius 20px. The main part is .buttons { display: grid; grid-template-columns: repeat(4, 1fr); } - this made 4 columns. I gave height 60px to all buttons. For colors I used nth-child - first 2 buttons red #ef4444 for AC and backspace, every 4th, 8th, 12th, 16th yellow #fbbf24 for operators, 20th green #34d399 for Copy, and rest gray #6b7280 . The hover is just opacity 0.85. I know nth-child is messy but it worked. Day 3 - JavaScript Logic This was the main part. const display = document.getElementById(\"display\") - I got the input. appendValue(value) - just does display.value += value . Very simple. clearDisplay() - makes it empty string. backspace() - I used slice(0, -1) to remove last character. I learned this from MDN. percentage() - I did Number(display.value) / 100 . Wrapped in try catch so if error shows “Error”. calculate() - This was tricky. My buttons show ÷ and × but JS eval() needs / and _. So I did expression.replace(/÷/g, \"/\").replace(/×/g, \"_\") before eval. I know eval is not safe but for small calculator project it’s okay. Also added try catch. copyResult() - Used navigator.clipboard.writeText(display.value) and then alert “Copied!”. This only works on https but GitHub pages is https so it’s fine. Problems I faced: When I clicked ÷ it showed ÷ in display and eval was failing. Fixed with replace. Copy button was giving error in VS Code live server because clipboard needs secure context. My CSS nth-child selector was becoming long, especially the last one :not(:nth-child(1))... but I kept it. What I learned: How grid works, how to handle display as string and evaluate it, how slice works for backspace, and how clipboard API works. Time: Around 6-7 hours total in 3 days. Live Link: http://princekumar189344-netizen.github.io/Simple-Calculator/ This is my own code, I didn’t use any AI template for UI, I picked colors myself.", "repo": "https://github.com/princekumar189344-netizen/Simple-Calculator", "demo": "https://princekumar189344-netizen.github.io/Simple-Calculator/"}]...
|
[{"post_id": 58993, "ts": "202 [{"post_id": 58993, "ts": "2026-08-31T15:55:22Z", "hours": 4.8369, "text": "Devlog - Simple Calculator by @princekumar What I built: A simple web calculator. It can do +, -, x, ÷, percentage and has AC, backspace and a copy button. I made it with just HTML, CSS and JS. Link: http://princekumar189344-netizen.github.io/Simple-Calculator/ Why I built it: I wanted to make something useful that I use daily. Also I was tired of making only games, so I thought a calculator would be a good small project to understand DOM manipulation properly. I started with just basic buttons and then added extra features. How I built it: The HTML is just a div with an input as display and buttons in a grid. In CSS I used display: grid with 4 columns for the buttons. I gave different colors - red for AC/backspace, yellow for operators, green for copy. In JS, the logic is very simple: appendValue() adds numbers/symbols to the display value. clearDisplay() clears everything. backspace() uses slice(0, -1) to remove last char. For calculate(), I had a problem because my buttons show ÷ and × but JS needs / and *. So I used .replace(/÷/g, “/”) before using eval(). I know eval is not best practice but for this small project it was easiest. percentage() just divides by 100. copyResult() uses navigator.clipboard.writeText and shows an alert. Challenges: The display was showing 79266-9 type values when I clicked operators fast, I fixed it by making sure values just append. Copy button was not working on http, it needs https, but GitHub pages is https so it works now. I first used a lot of nth-child in CSS which became confusing, next time I will give classes to buttons. What I learned: How grid works, how to handle button clicks without making 20 functions, and how clipboard API works. Also learned that readonly input is better than div for display."}]...
|
Title: Simple Calculator by @princekumar | Stardan Title: Simple Calculator by @princekumar | Stardance
Devlogs:
Devlog - Simple Calculator by @princekumar What I built: A simple web calculator. It can do +, -, x, ÷, percentage and has AC, backspace and a copy button. I made it with just HTML, CSS and JS. Link: http://princekumar189344-netizen.github.io/Simple-Calculator/ Why I built it: I wanted to make something useful that I use daily. Also I was tired of making only games, so I thought a calculator would be a good small project to understand DOM manipulation properly. I started with just basic buttons and then added extra features. How I built it: The HTML is just a div with an input as display and buttons in a grid. In CSS I used display: grid with 4 columns for the buttons. I gave different colors - red for AC/backspace, yellow for operators, green for copy. In JS, the logic is very simple: appendValue() adds numbers/symbols to the display value. clearDisplay() clears everything. backspace() uses slice(0, -1) to remove last char. For calculate(), I had a problem because my buttons show ÷ and × but JS needs / and *. So I used .replace(/÷/g, “/”) before using eval(). I know eval is not best practice but for this small project it was easiest. percentage() just divides by 100. copyResult() uses navigator.clipboard.writeText and shows an alert. Challenges: The display was showing 79266-9 type values when I clicked operators fast, I fixed it by making sure values just append. Copy button was not working on http, it needs https, but GitHub pages is https so it works now. I first used a lot of nth-child in CSS which became confusing, next time I will give classes to buttons. What I learned: How grid works, how to handle button clicks without making 20 functions, and how clipboard API works. Also learned that readonly input is better than div for display.
Ships:
Project: Simple Calculator Day 1 - Idea and HTML I wanted to make something simple that actually works. I made a basic layout with a div calculator , a h1 and an input with readonly as display. Then I made 20 buttons inside a div buttons . I used onclick="appendValue()" for all number buttons so I don’t have to write many functions. I also added AC, backspace ⌫, % and Copy button at the end. Day 2 - CSS For styling I used flex to center the calculator in body, background #111827 . Calculator box is #1f2937 with 340px width and border-radius 20px. The main part is .buttons { display: grid; grid-template-columns: repeat(4, 1fr); } - this made 4 columns. I gave height 60px to all buttons. For colors I used nth-child - first 2 buttons red #ef4444 for AC and backspace, every 4th, 8th, 12th, 16th yellow #fbbf24 for operators, 20th green #34d399 for Copy, and rest gray #6b7280 . The hover is just opacity 0.85. I know nth-child is messy but it worked. Day 3 - JavaScript Logic This was the main part. const display = document.getElementById("display") - I got the input. appendValue(value) - just does display.value += value . Very simple. clearDisplay() - makes it empty string. backspace() - I used slice(0, -1) to remove last character. I learned this from MDN. percentage() - I did Number(display.value) / 100 . Wrapped in try catch so if error shows “Error”. calculate() - This was tricky. My buttons show ÷ and × but JS eval() needs / and _. So I did expression.replace(/÷/g, "/").replace(/×/g, "_") before eval. I know eval is not safe but for small calculator project it’s okay. Also added try catch. copyResult() - Used navigator.clipboard.writeText(display.value) and then alert “Copied!”. This only works on https but GitHub pages is https so it’s fine. Problems I faced: When I clicked ÷ it showed ÷ in display and eval was failing. Fixed with replace. Copy button was giving error in VS Code live server because clipboard needs secure context. My CSS nth-child selector was becoming long, especially the last one :not(:nth-child(1))... but I kept it. What I learned: How grid works, how to handle display as string and evaluate it, how slice works for backspace, and how clipboard API works. Time: Around 6-7 hours total in 3 days. Live Link: http://princekumar189344-netizen.github.io/Simple-Calculator/ This is my own code, I didn’t use any AI template for UI, I picked colors myself....
|
1792878598.942719
|
1793742598.942719
|
|
57039
|
Southbag Mobile Banking by @sometgirldotonline | S Southbag Mobile Banking by @sometgirldotonline | Stardance...
|
sometgirldotonline
|
1
|
4.55
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T10:50:06Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Ship #1 of Southbag Mobile (V1 V2) The naming is horrible on purpose. We intend to have a second version of the mobile app that is entirely different to the current one because we can This app is intentionally bad (it took effort to make it bad loll)", "repo": "https://github.com/southbaghq/mobile-v1", "demo": "https://github.com/SouthbagHQ/mobile-v1/releases/latest"}]...
|
[{"post_id": 66303, "ts": "202 [{"post_id": 66303, "ts": "2026-09-12T02:02:00Z", "hours": 1.5544, "text": "i’m going to be real i dont remember what happened in this time but: If you are the person who reviewed the project previously and rejected because of the banner, please re-test the project! The project was previously pointed at an old domain for its API and that is what was resulting in the “your internet is broken” thing (random unrelated picture because it needed one)"}, {"post_id": 59434, "ts": "2026-09-01T09:01:03Z", "hours": 2.9283, "text": "Southbag Mobile banking app is now avaliable for use. Nobody asked for this, but we deliver what you didn’t know you wanted. Androids only, Kevin hates iPhones. More serious talk: Built basic app yesterday, added all functions except for support Added support today tbh i cant really detail this too much because i was never thinking of submitting to Stardance"}]...
|
Title: Southbag Mobile Banking by @sometgirldotonl Title: Southbag Mobile Banking by @sometgirldotonline | Stardance
Devlogs:
Southbag Mobile banking app is now avaliable for use. Nobody asked for this, but we deliver what you didn’t know you wanted. Androids only, Kevin hates iPhones. More serious talk: Built basic app yesterday, added all functions except for support Added support today tbh i cant really detail this too much because i was never thinking of submitting to Stardance
i’m going to be real i dont remember what happened in this time but: If you are the person who reviewed the project previously and rejected because of the banner, please re-test the project! The project was previously pointed at an old domain for its API and that is what was resulting in the “your internet is broken” thing (random unrelated picture because it needed one)
Ships:
Ship #1 of Southbag Mobile (V1 V2) The naming is horrible on purpose. We intend to have a second version of the mobile app that is entirely different to the current one because we can This app is intentionally bad (it took effort to make it bad loll)...
|
1793249481.864934
|
1793335881.864934
|
|
40863
|
My own site! by @quique | Stardance
|
quique
|
2
|
18.0
|
4
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T09:22:18Z", "hours": 3.0, "multiplier": 1.27, "payout": 4, "blessing": "neutral", "text": "Im currrently debugging the Chatbot and the trunstile, it works sometimes, everything else should be all right", "repo": "https://github.com/egarciao-max/my-site", "demo": "https://enrique-personal-site.enriquegarciaoropeza.workers.dev/"}, {"ship_num": 2, "ts": "2026-07-31T00:14:19Z", "hours": 15.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made my personal site, and just as a comment, there was a problem because at the beggining i used as a root folder another project, and thats why theres so many hours, i used ai for 3 css blocks for “stickers in the blocks”", "repo": "https://github.com/egarciao-max/my-site", "demo": "https://enrique-personal-site.enriquegarciaoropeza.workers.dev/"}]...
|
[{"post_id": 59439, "ts": "202 [{"post_id": 59439, "ts": "2026-09-01T09:11:15Z", "hours": 1.4861, "text": "Working on some hackclub Ai CHATBOT, css is not cooperating"}, {"post_id": 37989, "ts": "2026-07-31T02:43:39Z", "hours": 1.2661, "text": "MADE TELEGRAM BOT AND ADDED TURNSTILE AND ENDPOINT"}, {"post_id": 37949, "ts": "2026-07-31T00:11:59Z", "hours": 1.5047, "text": "Finished the site!"}, {"post_id": 36181, "ts": "2026-07-28T03:10:02Z", "hours": 13.0828, "text": "Worked on learning javascript, css, and html"}]...
|
Title: My own site! by @quique | Stardance
Devlog Title: My own site! by @quique | Stardance
Devlogs:
Worked on learning javascript, css, and html
Finished the site!
MADE TELEGRAM BOT AND ADDED TURNSTILE AND ENDPOINT
Working on some hackclub Ai CHATBOT, css is not cooperating
Ships:
I made my personal site, and just as a comment, there was a problem because at the beggining i used as a root folder another project, and thats why theres so many hours, i used ai for 3 css blocks for “stickers in the blocks”
Im currrently debugging the Chatbot and the trunstile, it works sometimes, everything else should be all right...
|
1793278508.098419
|
1793364908.098419
|
|
56867
|
ReminderBot by @biotest05 | Stardance
|
biotest05
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T08:44:04Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a reminder bot for slack, where you can make reminders for yourself. If you want to test out the bot, you must first authorize the reminder bot to a workspace (eg. Hack Club). The commands you can use are: /rremindme /rreminders <user (optional)> /rremovereminder If you use the /rremindme command, it will remind you in the same channel where you ran the command. If its a private joinable channel, you must invite the bot first so it can send messages on its own.", "repo": "https://git.gay/biotest05/reminder-bot", "demo": "https://hackclub.enterprise.slack.com/archives/C0P5NE354"}]...
|
[{"post_id": 59426, "ts": "202 [{"post_id": 59426, "ts": "2026-09-01T08:23:41Z", "hours": 0.2556, "text": "i made it use a database now"}, {"post_id": 59421, "ts": "2026-09-01T07:48:32Z", "hours": 0.2847, "text": "I already implemented the bot’s functionality (i would have 1 hour but i didnt initialize a git repository)"}]...
|
Title: ReminderBot by @biotest05 | Stardance
Devl Title: ReminderBot by @biotest05 | Stardance
Devlogs:
I already implemented the bot’s functionality (i would have 1 hour but i didnt initialize a git repository)
i made it use a database now
Ships:
I made a reminder bot for slack, where you can make reminders for yourself. If you want to test out the bot, you must first authorize the reminder bot to a workspace (eg. Hack Club). The commands you can use are: /rremindme /rreminders <user (optional)> /rremovereminder If you use the /rremindme command, it will remind you in the same channel where you ran the command. If its a private joinable channel, you must invite the bot first so it can send messages on its own....
|
1793224110.1460886
|
1793310510.1460886
|
|
56925
|
Jumpy by @itsaperson | Stardance
|
itsaperson
|
1
|
8.0
|
64
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T07:20:42Z", "hours": 8.0, "multiplier": 7.9, "payout": 64, "blessing": "neutral", "text": "I’ve made 2d platformer games before, but decided to step it up a dimension! I proudly present… MY 3D PLATFORMER GAME!!! Now I know it’s not perfect just yet, I’m only shipping this to mark a milestone of the game being kinda done. But there are still some things I’ll do for the next update to the game, such as doing something with the coins system, having a better loading screen. For the background, when I try it on godot and everything, It’s a light background, yet when I exported it and tried on itch, it was a dark background. I’ll try figure out what happened later on. Anyways, hope you have fun playing it!", "repo": "https://github.com/insertnewusername/3d-platformer", "demo": "https://insertnewusernamehere.itch.io/jumpy"}]...
|
[{"post_id": 59410, "ts": "202 [{"post_id": 59410, "ts": "2026-09-01T07:07:19Z", "hours": 0.4175, "text": "Organised the coins properly, along with having the winscreen logic and everything. Also have the red lasers the killing logic, as before they just did nothing."}, {"post_id": 59400, "ts": "2026-09-01T06:29:42Z", "hours": 0.7369, "text": "Made a like part where there are these scary red lasers going up and down, you have to like move your character. Also started working on the finish line, wanted to make it like very very minimalistic to be funny kinda, all that for a single flag. Will start polishing and implementing finish logic."}, {"post_id": 59348, "ts": "2026-09-01T02:53:03Z", "hours": 0.4347, "text": "Added a new level kinda, with the moving platforms. As well as checkpoint 6. But then I realised that the checkpoints looked kinda bad, and the platform were signalling the checkpoint anyways, so I hid the block with the checkpoint logic, and the logic still runs despite being invisible, making the overall game look much better"}, {"post_id": 59338, "ts": "2026-09-01T02:25:44Z", "hours": 6.4678, "text": "Worked on 2d godot project conces of twice. But decided to add another dimension to it! Now I’m making a 3d platformer. Used the kenny starter kit for assets, making some myself. It was fairly similar to the 2d experience, just everything was 3d. The camera moving feature was very cool. The only reason this devlog is so long is because I was originally planning to ship it to something else, before deciding on stardance"}]...
|
Title: Jumpy by @itsaperson | Stardance
Devlogs:
Title: Jumpy by @itsaperson | Stardance
Devlogs:
Worked on 2d godot project conces of twice. But decided to add another dimension to it! Now I’m making a 3d platformer. Used the kenny starter kit for assets, making some myself. It was fairly similar to the 2d experience, just everything was 3d. The camera moving feature was very cool. The only reason this devlog is so long is because I was originally planning to ship it to something else, before deciding on stardance
Added a new level kinda, with the moving platforms. As well as checkpoint 6. But then I realised that the checkpoints looked kinda bad, and the platform were signalling the checkpoint anyways, so I hid the block with the checkpoint logic, and the logic still runs despite being invisible, making the overall game look much better
Made a like part where there are these scary red lasers going up and down, you have to like move your character. Also started working on the finish line, wanted to make it like very very minimalistic to be funny kinda, all that for a single flag. Will start polishing and implementing finish logic.
Organised the coins properly, along with having the winscreen logic and everything. Also have the red lasers the killing logic, as before they just did nothing.
Ships:
I’ve made 2d platformer games before, but decided to step it up a dimension! I proudly present… MY 3D PLATFORMER GAME!!! Now I know it’s not perfect just yet, I’m only shipping this to mark a milestone of the game being kinda done. But there are still some things I’ll do for the next update to the game, such as doing something with the coins system, having a better loading screen. For the background, when I try it on godot and everything, It’s a light background, yet when I exported it and tried on itch, it was a dark background. I’ll try figure out what happened later on. Anyways, hope you have fun playing it!...
|
1793238625.0169477
|
1793325025.0169477
|
|
42619
|
[placeholder] by @BoltyPlays | Stardance
|
BoltyPlays
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T04:40:18Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "First shipped item… [placeholder] uses NASA’s APOD API and fetches its picture, video, or YT vid based on the day you input. It was difficult to integrate the YouTube part, mostly because my brain shut off (it was 2 am), but re-learning JS and CSS was equally as difficult. Overall, this project helped me jump back into the cold trail of building websites. This certainly isn’t impressive, but shows that I at least know a bit of JS…", "repo": "https://github.com/BoltyPlays/placeholder", "demo": "https://boltyplays.github.io/placeholder/"}]...
|
[{"post_id": 59372, "ts": "202 [{"post_id": 59372, "ts": "2026-09-01T04:12:43Z", "hours": 2.5833, "text": "completely forgot to make devlogs for this. whoops so started this project and learnt that NASA gave free api keys which is pretty cool but then my brain stopped and so a bit of Googling was required to help me understand the JS part finished all that, took upon the challenge to embed the youtube video, but struggled, so threw that aside and did a bit of CSS, in the process found this cool stripe design from CSSTricks managed to get the YouTube part working (just grab the code from youtube) and yeah. [placeholder] works"}]...
|
Title: [placeholder] by @BoltyPlays | Stardance
D Title: [placeholder] by @BoltyPlays | Stardance
Devlogs:
completely forgot to make devlogs for this. whoops so started this project and learnt that NASA gave free api keys which is pretty cool but then my brain stopped and so a bit of Googling was required to help me understand the JS part finished all that, took upon the challenge to embed the youtube video, but struggled, so threw that aside and did a bit of CSS, in the process found this cool stripe design from CSSTricks managed to get the YouTube part working (just grab the code from youtube) and yeah. [placeholder] works
Ships:
First shipped item… [placeholder] uses NASA’s APOD API and fetches its picture, video, or YT vid based on the day you input. It was difficult to integrate the YouTube part, mostly because my brain shut off (it was 2 am), but re-learning JS and CSS was equally as difficult. Overall, this project helped me jump back into the cold trail of building websites. This certainly isn’t impressive, but shows that I at least know a bit of JS…...
|
1793231365.892005
|
1793317765.892005
|
|
49158
|
FocusDefend by @aviral_dewangan14 | Stardance
|
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T03:50:29Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I make a android app where it restricts the social media and games and when child will answer correct questions in the quiz based on it they earn focus credits which will unlock screen time for them and the most challenging part in this was making the restriction engine and I am proud of that it is fully functional and working and it will help childern making healthier digital habits and due to accessibility permission you have to turn off the play protect at installation time then turn it on and do not forget to give good and honest reviews", "repo": "https://github.com/AviralDewangan14/focusdefend", "demo": "https://focusdefend.vercel.app/"}]...
|
[{"post_id": 59363, "ts": "202 [{"post_id": 59363, "ts": "2026-09-01T03:45:54Z", "hours": 1.0422, "text": "Implemented the restriction page which will pop out when any restriction were denied"}, {"post_id": 58982, "ts": "2026-08-31T15:40:09Z", "hours": 1.4222, "text": "Builded the rewards page which has amazing ui and ux by my perspective give your opinions too"}, {"post_id": 58872, "ts": "2026-08-31T13:26:45Z", "hours": 0.2753, "text": "I implemented the progress page where you can see your digital wellbeing data and study mode time"}, {"post_id": 58037, "ts": "2026-08-30T11:49:07Z", "hours": 0.6156, "text": "I have builded this student home page which gives students a quick view for starting study mode playing quizes and a liquid glass floating nav bar"}]...
|
Title: FocusDefend by @aviral_dewangan14 | Stardan Title: FocusDefend by @aviral_dewangan14 | Stardance
Devlogs:
I have builded this student home page which gives students a quick view for starting study mode playing quizes and a liquid glass floating nav bar
I implemented the progress page where you can see your digital wellbeing data and study mode time
Builded the rewards page which has amazing ui and ux by my perspective give your opinions too
Implemented the restriction page which will pop out when any restriction were denied
Ships:
I make a android app where it restricts the social media and games and when child will answer correct questions in the quiz based on it they earn focus credits which will unlock screen time for them and the most challenging part in this was making the restriction engine and I am proud of that it is fully functional and working and it will help childern making healthier digital habits and due to accessibility permission you have to turn off the play protect at installation time then turn it on and do not forget to give good and honest reviews...
|
1793260169.8161168
|
1794124169.8161168
|
|
29619
|
Arduino Slot Machine by @GeorgeSun | Stardance
|
GeorgeSun
|
2
|
3.0
|
16
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T01:30:25Z", "hours": 2.0, "multiplier": 5.0, "payout": 11, "blessing": "neutral", "text": "I made an interactive, hardware-driven slot machine featuring three physical reels, automated coin detection, a joystick lever mechanism, and a custom payout dispenser. Getting the physical wheels of the slot machine to spin was the first challenging part. I originally planned to have two Arduinos, one to control the wheels and one to control the rest of the components. However, I am not very experienced with Arduino communication, and it didn’t end up going anywhere. Instead, I had to go for the easiest solution, which was to wire everything to one Arduino instead, which had its caveats, such as not having enough pins. Also, making sure that the step motors did not jam was a huge issue, as we had a 12V 5A power supply that was on the lower end to power these motors that perform much better on 24V. To fix this, I ended up just running them at a slower speed and acceleration. The part I am most proud of is the look of the slot machine. Even though I didn’t end up getting all of the 3d prints I needed, I compromised with cardboard, and the design of it still ended up looking pretty cool. I am also happy about the fact that all of the components work together as it goes from the different game states, completing the game loop.", "repo": "https://github.com/JaydenPan110/TaikoDrum-Project", "demo": ""}, {"ship_num": 2, "ts": "2026-07-03T22:30:48Z", "hours": 1.0, "multiplier": 5.0, "payout": 5, "blessing": "neutral", "text": "I made an interactive, hardware-driven slot machine featuring three physical reels, automated coin detection, a joystick lever mechanism, and a custom payout dispenser. Getting the physical wheels of the slot machine to spin was the first challenging part. I originally planned to have two Arduinos, one to control the wheels and one to control the rest of the components. However, I am not very experienced with Arduino communication, and it didn’t end up going anywhere. Instead, I had to go for the easiest solution, which was to wire everything to one Arduino instead, which had its caveats, such as not having enough pins. Also, making sure that the step motors did not jam was a huge issue, as we had a 12V 5A power supply that was on the lower end to power these motors that perform much better on 24V. To fix this, I ended up just running them at a slower speed and acceleration. The part I am most proud of is the look of the slot machine. Even though I didn’t end up getting all of the 3d prints I needed, I compromised with cardboard, and the design of it still ended up looking pretty cool. I am also happy about the fact that all of the components work together as it goes from the different game states, completing the game loop.", "repo": "https://github.com/JaydenPan110/TaikoDrum-Project", "demo": ""}]...
|
[{"post_id": 23870, "ts": "202 [{"post_id": 23870, "ts": "2026-07-07T02:04:17Z", "hours": 1.8836, "text": "Here are some schematic and 3D models I had made of the slot machine before I started building it. I had modelled everything first to ensure building was a smooth process."}, {"post_id": 20436, "ts": "2026-07-02T01:00:58Z", "hours": 0.8203, "text": "Made an interactive slot machine with three wheels. Each wheel has 10 different symbols, and if the wheels show the same symbol, the user gets a jackpot. The user inserts a coin to activate the system, then switches the joystick down to spin the physical reels. Each time after the user presses the joystick down, it stops each motor until each motor has stopped. Each motor self-adjusts to display a specific symbol to the user. If the user hits a jackpot, a specialized dispensing mechanism triggers a payout to reward the user."}]...
|
Title: Arduino Slot Machine by @GeorgeSun | Starda Title: Arduino Slot Machine by @GeorgeSun | Stardance
Devlogs:
Made an interactive slot machine with three wheels. Each wheel has 10 different symbols, and if the wheels show the same symbol, the user gets a jackpot. The user inserts a coin to activate the system, then switches the joystick down to spin the physical reels. Each time after the user presses the joystick down, it stops each motor until each motor has stopped. Each motor self-adjusts to display a specific symbol to the user. If the user hits a jackpot, a specialized dispensing mechanism triggers a payout to reward the user.
Here are some schematic and 3D models I had made of the slot machine before I started building it. I had modelled everything first to ensure building was a smooth process.
Ships:
I made an interactive, hardware-driven slot machine featuring three physical reels, automated coin detection, a joystick lever mechanism, and a custom payout dispenser. Getting the physical wheels of the slot machine to spin was the first challenging part. I originally planned to have two Arduinos, one to control the wheels and one to control the rest of the components. However, I am not very experienced with Arduino communication, and it didn’t end up going anywhere. Instead, I had to go for the easiest solution, which was to wire everything to one Arduino instead, which had its caveats, such as not having enough pins. Also, making sure that the step motors did not jam was a huge issue, as we had a 12V 5A power supply that was on the lower end to power these motors that perform much better on 24V. To fix this, I ended up just running them at a slower speed and acceleration. The part I am most proud of is the look of the slot machine. Even though I didn’t end up getting all of the 3d prints I needed, I compromised with cardboard, and the design of it still ended up looking pretty cool. I am also happy about the fact that all of the components work together as it goes from the different game states, completing the game loop.
I made an interactive, hardware-driven slot machine featuring three physical reels, automated coin detection, a joystick lever mechanism, and a custom payout dispenser. Getting the physical wheels of the slot machine to spin was the first challenging part. I originally planned to have two Arduinos, one to control the wheels and one to control the rest of the components. However, I am not very experienced with Arduino communication, and it didn’t end up going anywhere. Instead, I had to go for the easiest solution, which was to wire everything to one Arduino instead, which had its caveats, such as not having enough pins. Also, making sure that the step motors did not jam was a huge issue, as we had a 12V 5A power supply that was on the lower end to power these motors that perform much better on 24V. To fix this, I ended up just running them at a slower speed and acceleration. The part I am most proud of is the look of the slot machine. Even though I didn’t end up getting all of the 3d prints I needed, I compromised with cardboard, and the design of it still ended up looking pretty cool. I am also happy about the fact that all of the components work together as it goes from the different game states, completing the game loop....
|
1793285423.0185556
|
1793371823.0185556
|
|
56083
|
Typing speed test by @projectroshan917 | Stardance
|
projectroshan917
|
2
|
10.0
|
24
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T00:45:07Z", "hours": 0.0, "multiplier": 7.92, "payout": 2, "blessing": "neutral", "text": "I change colour and make text related to stardance and hackclud", "repo": "https://github.com/Roshan-coder123/Typing-Speed-Test-", "demo": "https://roshan-coder123.github.io/Typing-Speed-Test-/"}, {"ship_num": 2, "ts": "2026-08-30T03:39:43Z", "hours": 10.0, "multiplier": 4.49, "payout": 22, "blessing": "neutral", "text": "I made an Typing Speed Testing website which test your typing speed by giving different English word to type and rank your typing speed on different criteria’s/basis like Accuracy, Errors, Chars typed, Duration as result. This web side helps you to improve typing skill. It can be used in moth mobile and desktop easily.", "repo": "https://github.com/Roshan-coder123/Typing-Speed-Test-", "demo": "https://roshan-coder123.github.io/Typing-Speed-Test-/"}]...
|
[{"post_id": 57865, "ts": "202 [{"post_id": 57865, "ts": "2026-08-30T05:41:50Z", "hours": 0.3981, "text": "I change color theme also make sentences related to stardance and hackclub."}, {"post_id": 57803, "ts": "2026-08-30T03:14:04Z", "hours": 9.8569, "text": "I made an typing speed testing website where you can test your typing speed."}]...
|
Title: Typing speed test by @projectroshan917 | St Title: Typing speed test by @projectroshan917 | Stardance
Devlogs:
I made an typing speed testing website where you can test your typing speed.
I change color theme also make sentences related to stardance and hackclub.
Ships:
I made an Typing Speed Testing website which test your typing speed by giving different English word to type and rank your typing speed on different criteria’s/basis like Accuracy, Errors, Chars typed, Duration as result. This web side helps you to improve typing skill. It can be used in moth mobile and desktop easily.
I change colour and make text related to stardance and hackclud...
|
1792878523.5855434
|
1793742523.5855434
|
|
55190
|
rock paper scissors by @Atamagii | Stardance
|
Atamagii
|
1
|
6.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T00:21:03Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What did you make? A browser-based Rock Paper Scissors game built with HTML, CSS, and JavaScript. What was challenging? Getting the game logic right — I ran into bugs from mixing up assignment (=) vs. equality (===) operators, and mismatches in string literals inside my scoring conditionals that made the win/lose/draw checks behave wrong. What are you proud of? Getting a fully working game loop where the logic correctly compares choices and tracks the score, after tracking down some annoying bugs. What should people know so they can test your project? Just pick rock, paper, or scissors and play against the computer — the scoring should update correctly each round.", "repo": "https://github.com/ATAMAGII/rock-paper-scissors", "demo": "https://atamagii.github.io/rock-paper-scissors/"}]...
|
[{"post_id": 56186, "ts": "202 [{"post_id": 56186, "ts": "2026-08-27T20:26:03Z", "hours": 6.4967, "text": "a rock paper scissors game withpersistent score tracking"}]...
|
Title: rock paper scissors by @Atamagii | Stardanc Title: rock paper scissors by @Atamagii | Stardance
Devlogs:
a rock paper scissors game withpersistent score tracking
Ships:
What did you make? A browser-based Rock Paper Scissors game built with HTML, CSS, and JavaScript. What was challenging? Getting the game logic right — I ran into bugs from mixing up assignment (=) vs. equality (===) operators, and mismatches in string literals inside my scoring conditionals that made the win/lose/draw checks behave wrong. What are you proud of? Getting a fully working game loop where the logic correctly compares choices and tracks the score, after tracking down some annoying bugs. What should people know so they can test your project? Just pick rock, paper, or scissors and play against the computer — the scoring should update correctly each round....
|
1793289208.0976367
|
1793375608.0976367
|
|
53983
|
Beginners Guide to Drone Warfare by @bradlloyd | S Beginners Guide to Drone Warfare by @bradlloyd | Stardance...
|
bradlloyd
|
2
|
10.0
|
62
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T00:01:58Z", "hours": 2.0, "multiplier": 6.67, "payout": 16, "blessing": "neutral", "text": "Begginers Guide to Drone Warfare 1.1.2 now avalible! Updates since 1.1 Pros&Cons of drone warfare What are some of the beneifits and drawbacks or roadblocks to drone warfare. Types of drones. Learn about fpv to agricultural to different type of drones previously mentioned. Style:added headers in the individual sections to be able to read more naturally and easier in the types of drones and pros and cons sections. Dynamic background. As you scroll up or down the split text background color changes to make it more visually pleasing as well as interesting to look at. Thank you for your time!", "repo": "https://github.com/Bdlloyd83/aBeginnersGuidetoDroneWarefare", "demo": "https://bdlloyd83.github.io/aBeginnersGuidetoDroneWarfare/"}, {"ship_num": 2, "ts": "2026-08-26T04:18:18Z", "hours": 8.0, "multiplier": 5.51, "payout": 46, "blessing": "neutral", "text": "A Beginners Guide to Drone Warfare is for everyone. ABGTDW explains how drones have evolved specifically for war since 1849 to today. Through knowing the past of Drones I hope we can be prepared for the ever expanding role they will have in our future. Because drones are so important it is vital that you understand them. ABGTDW explains drones like your a 12 year old and allows almost anyone to understand the science behind drones. You will learn how everything from the electric motors to computer chips to sensors on the drones work. Finally the reason I made ABGTDW was for up to date information on how drones are actually being used and new advancements which you can find on the home page. Relevant articles will help you understand how todays drones are being used and videos can provide an entertaining educational experience.", "repo": "https://github.com/Bdlloyd83/aBeginnersGuidetoDroneWarefare", "demo": "https://bdlloyd83.github.io/aBeginnersGuidetoDroneWarfare/"}]...
|
[{"post_id": 59261, "ts": "202 [{"post_id": 59261, "ts": "2026-08-31T23:07:46Z", "hours": 0.8667, "text": "———————––ABGTDW 1.1.2———————––This time i added a simple types of drones page covering: agricultural––recreational––medium altitude long distance––helicopter————also added dynamic background so when you scroll the background of the split-text changes from white to grey or blue to black as seen in the top right and left side of the first photo. -Once again this was done in response to a request for feedback on my first ship."}, {"post_id": 59232, "ts": "2026-08-31T22:05:33Z", "hours": 1.5167, "text": "———————––ABGTDW 1.1.1———————––I added a pros and cons section following the same div format ive been using up to this point. This is in response to feedback from my first ship. Pros: —cheap——Saves Humans(on your side)——Small/Agile——Cons:—Intro——Morals——Infrastructure— Thats it for now im looking forward to adding a types of drones page as well as improving the css styling both also requests from reviews. Thank you for your time I hope you will enjoy."}, {"post_id": 54908, "ts": "2026-08-26T04:02:35Z", "hours": 1.4167, "text": "BGTDW 1.0 FINISHED! Homepage? Updated. We got news articles and interesting videos related to drones that I felt could be big or a part of the future of drone warfare. The news articles are just to stay up to date with the latest info so you dont have to scour the internet but just can come to my website to hopefully find all you need to know. Question-I want to do some sort of community function for my next version would that be interesting to you guys? Thanks for your time."}, {"post_id": 54870, "ts": "2026-08-26T02:16:11Z", "hours": 1.75, "text": "How a drone works page (and how to stop it.) This one was fun I got to geek out and put about all the science and technology that goes into how a drone works. Covered how a brushless motor works and converts energy into flight. Dove into the brains of the drone how they control the motors. Also covered how the drone can use sensors and cameras. Most importantly how to combat a drone and win. All of the structure on this page is very simular to the timeline utilizing divs and different classes to separate photos and information as well as formating for text headers. Have not yet started the home page but i think it will be latest news and updates for “War” drones"}, {"post_id": 54809, "ts": "2026-08-25T23:05:37Z", "hours": 2.2144, "text": "Made backdrop from combo of shot from ukraine and two other drones. (Nice little photoshop break to create some sick work.) Added dark mode and light mode. When you mode the text switch between black and white. The backdrop behind the text exerpts on the timeline switch from grey to black. The buttons and headers always got a grey background. Created home page for next update maybe on about drones or latest news I will think about it."}, {"post_id": 54744, "ts": "2026-08-25T20:34:22Z", "hours": 1.25, "text": "Begginers Guid to Drone Warefare finally has some style! I started with splitting up each group of photo and text into one then split that into a respective photo and text spot. This allowed the text and photo to split the screen half and half. I rearranged the html so every other photo would come before the text so that the photos would alternate sides. I initally had 100 vh for the photos but needed to update it so it wasnt just a long strip of the photo but to 100% for height. Other than that fairly smooth sailing. Added a grey background to the text portion for an improved asthetic."}, {"post_id": 54202, "ts": "2026-08-25T02:48:02Z", "hours": 1.7333, "text": "A beginners guide to drone warefare-covers everything there is to know about drone warefare but at the moment has just a timeline and is a has no life because I havent got around to styling or any of that fun stuff but it is coming soon just trust me. SOOO much information I feel like im hardly scratching the surface but I love it. Also i need to format the photos better but am sticking a pin in it for tonight."}]...
|
Title: Beginners Guide to Drone Warfare by @bradll Title: Beginners Guide to Drone Warfare by @bradlloyd | Stardance
Devlogs:
A beginners guide to drone warefare-covers everything there is to know about drone warefare but at the moment has just a timeline and is a has no life because I havent got around to styling or any of that fun stuff but it is coming soon just trust me. SOOO much information I feel like im hardly scratching the surface but I love it. Also i need to format the photos better but am sticking a pin in it for tonight.
Begginers Guid to Drone Warefare finally has some style! I started with splitting up each group of photo and text into one then split that into a respective photo and text spot. This allowed the text and photo to split the screen half and half. I rearranged the html so every other photo would come before the text so that the photos would alternate sides. I initally had 100 vh for the photos but needed to update it so it wasnt just a long strip of the photo but to 100% for height. Other than that fairly smooth sailing. Added a grey background to the text portion for an improved asthetic.
Made backdrop from combo of shot from ukraine and two other drones. (Nice little photoshop break to create some sick work.) Added dark mode and light mode. When you mode the text switch between black and white. The backdrop behind the text exerpts on the timeline switch from grey to black. The buttons and headers always got a grey background. Created home page for next update maybe on about drones or latest news I will think about it.
How a drone works page (and how to stop it.) This one was fun I got to geek out and put about all the science and technology that goes into how a drone works. Covered how a brushless motor works and converts energy into flight. Dove into the brains of the drone how they control the motors. Also covered how the drone can use sensors and cameras. Most importantly how to combat a drone and win. All of the structure on this page is very simular to the timeline utilizing divs and different classes to separate photos and information as well as formating for text headers. Have not yet started the home page but i think it will be latest news and updates for “War” drones
BGTDW 1.0 FINISHED! Homepage? Updated. We got news articles and interesting videos related to drones that I felt could be big or a part of the future of drone warfare. The news articles are just to stay up to date with the latest info so you dont have to scour the internet but just can come to my website to hopefully find all you need to know. Question-I want to do some sort of community function for my next version would that be interesting to you guys? Thanks for your time.
———————––ABGTDW 1.1.1———————––I added a pros and cons section following the same div format ive been using up to this point. This is in response to feedback from my first ship. Pros: —cheap——Saves Humans(on your side)——Small/Agile——Cons:—Intro——Morals——Infrastructure— Thats it for now im looking forward to adding a types of drones page as well as improving the css styling both also requests from reviews. Thank you for your time I hope you will enjoy.
———————––ABGTDW 1.1.2———————––This time i added a simple types of drones page covering: agricultural––recreational––medium altitude long distance––helicopter————also added dynamic background so when you scroll the background of the split-text changes from white to grey or blue to black as seen in the top right and left side of the first photo. -Once again this was done in response to a request for feedback on my first ship.
Ships:
A Beginners Guide to Drone Warfare is for everyone. ABGTDW explains how drones have evolved specifically for war since 1849 to today. Through knowing the past of Drones I hope we can be prepared for the ever expanding role they will have in our future. Because drones are so important it is vital that you understand them. ABGTDW explains drones like your a 12 year old and allows almost anyone to understand the science behind drones. You will learn how everything from the electric motors to computer chips to sensors on the drones work. Finally the reason I made ABGTDW was for up to date information on how drones are actually being used and new advancements which you can find on the home page. Relevant articles will help you understand how todays drones are being used and videos can provide an entertaining educational experience.
Begginers Guide to Drone Warfare 1.1.2 now avalible! Updates since 1.1 Pros&Cons of drone warfare What are some of the beneifits and drawbacks or roadblocks to drone warfare. Types of drones. Learn about fpv to agricultural to different type of drones previously mentioned. Style:added headers in the individual sections to be able to read more naturally and easier in the types of drones and pros and cons sections. Dynamic background. As you scroll up or down the split text background color changes to make it more visually pleasing as well as interesting to look at. Thank you for your time!...
|
1793274540.2960162
|
1793360940.2960162
|
|
40758
|
Game Contained Entirely Within a Minecraft Shader Game Contained Entirely Within a Minecraft Shader by @_Pm7 | Stardance...
|
_Pm7
|
1
|
48.0
|
941
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-31T23:53:19Z", "hours": 48.0, "multiplier": 19.46, "payout": 941, "blessing": "neutral", "text": "I created a fully functional 3d game that runs entirely through a vanilla Minecraft postprocessing effect. Anyone who owns minecraft java edition will be able to load this onto a world and play it. Player input is collected via a datapack that changes colors on the screen when keys are pressed, but besides that the entire game’s code is contained in a resource pack. It is complete with a tank-style movement system, key-door interactions, enemies, and an intuitive level loading system.", "repo": "https://github.com/Pm7-dev/posteffect-game", "demo": "https://github.com/Pm7-dev/posteffect-game/releases/latest"}]...
|
[{"post_id": 59271, "ts": "202 [{"post_id": 59271, "ts": "2026-08-31T23:38:05Z", "hours": 2.5286, "text": "It’s finally finished! After designing the main level and getting some friends to playtest it, I’m happy to say that this project is finally ready for release! The game can now be played by anyone with vanilla Minecraft Java Edition!!"}, {"post_id": 58473, "ts": "2026-08-30T21:49:59Z", "hours": 7.7214, "text": "Added cats I have added my friend’s cat, Mumuy, into the game as an enemy which follows the player around and attacks if she gets close. This took such an incredible amount of pain and debugging with the memory buffer that I’m almost ready to call this project done. In the next devlog I’d like to polish up some things and then finally release the project."}, {"post_id": 52456, "ts": "2026-08-22T16:05:18Z", "hours": 7.8172, "text": "I knew this would take a long time but uh….. oh. I have now created a functioning inventory pickup system, and opening doors will now check to make sure the player is holding the corresponding colored key before it opens. To do this, I had to store an array of colors of the keys in the program memory for the player’s inventory. But since I can’t always guarantee that the array doesn’t have gaps in it, each frame also generates a list of positions of the colors addresses (I guess in a really cursed way you could call these pointers?) so I don’t have to sample the entire inventory list for every pixel in the rendering passes and can instead read the pointers list to know what inventory index to render."}, {"post_id": 49341, "ts": "2026-08-18T03:29:17Z", "hours": 6.1069, "text": "Added spinning keys as placeable objects in the map image I modeled this key in blender and rendered out eight frames of it spinning to create this texture atlas. The atlas is pulled from based on the GameTime. Loading keys into memory from the map proved to be quite a challenge. When initializing the map, the shader reads the map texture for any pixels with opacity 150 and treats them as keys, loading them and their data into a few rows in memory. The data stored and updated along with them is: Their coordinates on the map, their colors, their distance offset from the player, and their rotational offset from the player. Using this data, I created a render pass after the map renderer that adds these in. Next will be a pickup system so they can be used to unlock doors. The player inventory system is probably gonna suuuuuuck to make."}, {"post_id": 47224, "ts": "2026-08-15T00:20:59Z", "hours": 3.9419, "text": "Map units can now be destroyed in real time by pressing the space bar. Listening for the player jump predicate and treating it like an “action” input allows me to make the map destructible. This will be used later to make doors that require keys to open. Additionally, inputs are now polled independently of one another, as shown later in the video. Each input set (movement, rotation, action) has its own text display associated with it, and now the shader samples from three points on the screen to get all the inputs at once."}, {"post_id": 44039, "ts": "2026-08-09T15:30:26Z", "hours": 1.9911, "text": "Wall texture atlas created The shader now looks for specific rgb values in the map so it knows what part of the atlas to sample from, allowing me to choose which wall texture to render when making the game map. Next I will be working on wall collision and an item pickup system."}, {"post_id": 42366, "ts": "2026-08-07T01:37:06Z", "hours": 1.3319, "text": "Wall textures are now sampled from texture images using the raycast positions, I can determine the x coordinate to sample from on the texture just by modding the larger coordinate by one (making the texture repeat every unit.) The Y coordinate is based on the current calculated wall height (determined by the distance between the raycast and the player.) Next I will make textures loaded on an atlas instead of a single image so I can make multiple different types of wall."}, {"post_id": 39874, "ts": "2026-08-03T04:25:21Z", "hours": 7.4583, "text": "Spent a huge amount of time refactoring my entire fragment shader pipeline, splitting it into more than two render passes. Before, there was one pass to update data, and one to render the data. Now there are six: Player input -> Update Map -> Update Player -> Collect Raycast Data -> Render Map -> Update Global Data All these passes share one 512x512 persistent render target to store/load data, which gives me about one megabyte of “ram” given that each pixel stores 32 bits. This should be more than enough for what I need. Currently, I don’t even use half of it, with the largest chunk storing the 256x256 game level that can now be affected by the player. As an added bonus to this new render target storage method, I now store the coordinates of where each camera raycast hits, so I can map textures to the walls. I think I’ll work on a system to do this next."}, {"post_id": 38857, "ts": "2026-08-01T12:49:37Z", "hours": 3.535, "text": "4th Devlog, Rewritten the raycasting system. Now the map is gridlocked to its texture, with each pixel representing one unit. The raycast only has to check the status of each pixel it passes through on the map image rather than sampling at a defined distance interval that could potentially pass through the corners of units. I also fixed the previous fisheye effect by multiplying the caculated ray distance by the cosine of its angle offset from the center Next I would like to work on texture mapping to the walls, but with what I plan to add in the future I think I might spend some time refactoring the way I store the program’s memory so I can fit more data in it and organize it better."}, {"post_id": 37362, "ts": "2026-07-30T00:50:21Z", "hours": 1.4472, "text": "Beginnings of player input Because shader code is run entirely on the GPU, I can’t just directly listen for keyboard input. The only thing that the shader code actually reads is the colors rendered to the screen by minecraft, so I needed to make a sort of “translation layer” that listens for player input in minecraft and outputs a color on the screen so it can be read and interpreted by the shader code. My really jank test rig As shown in the video, the color of the square updates depending on the pressed keys. The inputs are gathered using minecraft’s “predicate” system and are translated to the background color of a text display entity. The player is mounted to an armor stand to stop them from moving away, keeping the text display in the center of the screen always. How I keep track of data in code that can’t store variables If a shader can only read colors, how does it remember where the player is? This question was one that I had until I discovered minecraft’s support for the persistent render target. This allows the shader to sample from the pixels it renders in the current frame in the next frame. A floating point number is stored using thirty two bits. Each pixel’s color is stored with eight bits of precision each for red, green, blue, and alpha channels, which also happens to total 32 bits. So I wrote what is possibly the strangest utility I have ever written, that can translate a float to an rgba color and an rgba color to a float. Now, using a persistent render target that is simply never rendered to the screen, I can store the player’s x, y, and camera position in colors, and update them based on the color in the middle of the screen from the minecraft render. I suppose the persistent render target sorta counts as the game’s “RAM.” I’ll be using it to store a lot more data in the future, but next I’ll be fixing up some issues I found with rendering and player control."}, {"post_id": 36763, "ts": "2026-07-29T01:02:02Z", "hours": 3.0931, "text": "I finally got some actual visual output!! After fixing many compiler errors, and then another few that kept causing the loaded data to reset, I got this output. The current system renders walls based on the pixel’s distance from a wall defined by a texture (visualized in the picture). This created a sort of fisheye distortion that I’ll try and work out later, but I’m happy with my progress for now, and would like to focus on getting player movement functional"}, {"post_id": 36141, "ts": "2026-07-28T01:24:17Z", "hours": 1.3989, "text": "Minecraft has in recent snapshots greatly improved the capabilities of its shader system, now allowing postprocessing shaders “post effects” to be applied using commands. This has wildly changed what is now possible in vanilla minecraft and I immediately was overcome with excitement about what was now possible. After playing around with it for a while and discovering the “persistent” mode on custom render targets, I realized that even more than expected was now possible, and found a way to make posteffects that have fade-in animations by updating the value in a persistent render target over the course of a few frames. To make it consistent across different frame rates, I had to figure out a way to get a deltatime (time between frames), which I was able to do using the GameTime uniform in minecraft. Having gotten a deltatime, I began wondering about the possibilities of creating a fully functional game contained entirely in a minecraft postprocessing shader…"}]...
|
Title: Game Contained Entirely Within a Minecraft Title: Game Contained Entirely Within a Minecraft Shader by @_Pm7 | Stardance
Devlogs:
Minecraft has in recent snapshots greatly improved the capabilities of its shader system, now allowing postprocessing shaders “post effects” to be applied using commands. This has wildly changed what is now possible in vanilla minecraft and I immediately was overcome with excitement about what was now possible. After playing around with it for a while and discovering the “persistent” mode on custom render targets, I realized that even more than expected was now possible, and found a way to make posteffects that have fade-in animations by updating the value in a persistent render target over the course of a few frames. To make it consistent across different frame rates, I had to figure out a way to get a deltatime (time between frames), which I was able to do using the GameTime uniform in minecraft. Having gotten a deltatime, I began wondering about the possibilities of creating a fully functional game contained entirely in a minecraft postprocessing shader…
I finally got some actual visual output!! After fixing many compiler errors, and then another few that kept causing the loaded data to reset, I got this output. The current system renders walls based on the pixel’s distance from a wall defined by a texture (visualized in the picture). This created a sort of fisheye distortion that I’ll try and work out later, but I’m happy with my progress for now, and would like to focus on getting player movement functional
Beginnings of player input Because shader code is run entirely on the GPU, I can’t just directly listen for keyboard input. The only thing that the shader code actually reads is the colors rendered to the screen by minecraft, so I needed to make a sort of “translation layer” that listens for player input in minecraft and outputs a color on the screen so it can be read and interpreted by the shader code. My really jank test rig As shown in the video, the color of the square updates depending on the pressed keys. The inputs are gathered using minecraft’s “predicate” system and are translated to the background color of a text display entity. The player is mounted to an armor stand to stop them from moving away, keeping the text display in the center of the screen always. How I keep track of data in code that can’t store variables If a shader can only read colors, how does it remember where the player is? This question was one that I had until I discovered minecraft’s support for the persistent render target. This allows the shader to sample from the pixels it renders in the current frame in the next frame. A floating point number is stored using thirty two bits. Each pixel’s color is stored with eight bits of precision each for red, green, blue, and alpha channels, which also happens to total 32 bits. So I wrote what is possibly the strangest utility I have ever written, that can translate a float to an rgba color and an rgba color to a float. Now, using a persistent render target that is simply never rendered to the screen, I can store the player’s x, y, and camera position in colors, and update them based on the color in the middle of the screen from the minecraft render. I suppose the persistent render target sorta counts as the game’s “RAM.” I’ll be using it to store a lot more data in the future, but next I’ll be fixing up some issues I found with rendering and player control.
4th Devlog, Rewritten the raycasting system. Now the map is gridlocked to its texture, with each pixel representing one unit. The raycast only has to check the status of each pixel it passes through on the map image rather than sampling at a defined distance interval that could potentially pass through the corners of units. I also fixed the previous fisheye effect by multiplying the caculated ray distance by the cosine of its angle offset from the center Next I would like to work on texture mapping to the walls, but with what I plan to add in the future I think I might spend some time refactoring the way I store the program’s memory so I can fit more data in it and organize it better.
Spent a huge amount of time refactoring my entire fragment shader pipeline, splitting it into more than two render passes. Before, there was one pass to update data, and one to render the data. Now there are six: Player input -> Update Map -> Update Player -> Collect Raycast Data -> Render Map -> Update Global Data All these passes share one 512x512 persistent render target to store/load data, which gives me about one megabyte of “ram” given that each pixel stores 32 bits. This should be more than enough for what I need. Currently, I don’t even use half of it, with the largest chunk storing the 256x256 game level that can now be affected by the player. As an added bonus to this new render target storage method, I now store the coordinates of where each camera raycast hits, so I can map textures to the walls. I think I’ll work on a system to do this next.
Wall textures are now sampled from texture images using the raycast positions, I can determine the x coordinate to sample from on the texture just by modding the larger coordinate by one (making the texture repeat every unit.) The Y coordinate is based on the current calculated wall height (determined by the distance between the raycast and the player.) Next I will make textures loaded on an atlas instead of a single image so I can make multiple different types of wall.
Wall texture atlas created The shader now looks for specific rgb values in the map so it knows what part of the atlas to sample from, allowing me to choose which wall texture to render when making the game map. Next I will be working on wall collision and an item pickup system.
Map units can now be destroyed in real time by pressing the space bar. Listening for the player jump predicate and treating it like an “action” input allows me to make the map destructible. This will be used later to make doors that require keys to open. Additionally, inputs are now polled independently of one another, as shown later in the video. Each input set (movement, rotation, action) has its own text display associated with it, and now the shader samples from three points on the screen to get all the inputs at once.
Added spinning keys as placeable objects in the map image I modeled this key in blender and rendered out eight frames of it spinning to create this texture atlas. The atlas is pulled from based on the GameTime. Loading keys into memory from the map proved to be quite a challenge. When initializing the map, the shader reads the map texture for any pixels with opacity 150 and treats them as keys, loading them and their data into a few rows in memory. The data stored and updated along with them is: Their coordinates on the map, their colors, their distance offset from the player, and their rotational offset from the player. Using this data, I created a render pass after the map renderer that adds these in. Next will be a pickup system so they can be used to unlock doors. The player inventory system is probably gonna suuuuuuck to make.
I knew this would take a long time but uh….. oh. I have now created a functioning inventory pickup system, and opening doors will now check to make sure the player is holding the corresponding colored key before it opens. To do this, I had to store an array of colors of the keys in the program memory for the player’s inventory. But since I can’t always guarantee that the array doesn’t have gaps in it, each frame also generates a list of positions of the colors addresses (I guess in a really cursed way you could call these pointers?) so I don’t have to sample the entire inventory list for every pixel in the rendering passes and can instead read the pointers list to know what inventory index to render.
Added cats I have added my friend’s cat, Mumuy, into the game as an enemy which follows the player around and attacks if she gets close. This took such an incredible amount of pain and debugging with the memory buffer that I’m almost ready to call this project done. In the next devlog I’d like to polish up some things and then finally release the project.
It’s finally finished! After designing the main level and getting some friends to playtest it, I’m happy to say that this project is finally ready for release! The game can now be played by anyone with vanilla Minecraft Java Edition!!
Ships:
I created a fully functional 3d game that runs entirely through a vanilla Minecraft postprocessing effect. Anyone who owns minecraft java edition will be able to load this onto a world and play it. Player input is collected via a datapack that changes colors on the screen when keys are pressed, but besides that the entire game’s code is contained in a resource pack. It is complete with a tank-style movement system, key-door interactions, enemies, and an intuitive level loading system....
|
1793138006.9398832
|
1793224406.9398832
|