|
1001
|
HACKSOLE! by @asta_exl10 | Stardance
|
asta_exl10
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: HACKSOLE! by @asta_exl10 | Stardance
|
1792540360.57122
|
1793145160.57122
|
|
1002
|
My first slack bot! by @HackPlayAar | Stardance
|
HackPlayAar
|
0
|
0.58
|
0
|
[]
|
[{"post_id": 683, "ts": "2026- [{"post_id": 683, "ts": "2026-06-02T07:34:51Z", "hours": 0.5781, "text": "A Slack Bot named J.A.R.V.I.S"}]...
|
Title: My first slack bot! by @HackPlayAar | Stard Title: My first slack bot! by @HackPlayAar | Stardance
Devlogs:
A Slack Bot named J.A.R.V.I.S...
|
1792604877.4120207
|
1793209677.4120207
|
|
1003
|
My awesome macropad! by @ghastly | Stardance
|
ghastly
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @ghastly | Stardanc Title: My awesome macropad! by @ghastly | Stardance...
|
1792695244.7120202
|
1793300044.7120202
|
|
1004
|
Untitled by @Anay | Stardance
|
Anay
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @Anay | Stardance
|
1792709238.131434
|
1793314038.131434
|
|
1005
|
Untitled by @Anay | Stardance
|
Anay
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @Anay | Stardance
|
1792522106.1587174
|
1793126906.1587174
|
|
1006
|
Untitled by @Srijit | Stardance
|
Srijit
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @Srijit | Stardance
|
1792504051.1680636
|
1793108851.1680636
|
|
1007
|
Homelab Dashboard by @nbth | Stardance
|
nbth
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Homelab Dashboard by @nbth | Stardance
|
1792507754.9966264
|
1793112554.9966264
|
|
1008
|
ClubHub by @Mottl | Stardance
|
Mottl
|
0
|
22.72
|
0
|
[]
|
[{"post_id": 45223, "ts": "202 [{"post_id": 45223, "ts": "2026-08-11T15:42:37Z", "hours": 2.8606, "text": "#Plan to LOCK IN! This contest ends in a month and a half, and I have a plan to get it done in 10 days! The picture below is all I have left to do in ClubHub, and all there is is this! If I do one thing every day, then I can get this thing done before the deadline! Time to get to work!"}, {"post_id": 39132, "ts": "2026-08-01T20:58:21Z", "hours": 7.4072, "text": "Signup Page!!!!! You (probably like two people) may have been wondering what I have been doing the past two weeks, and I am proud to announce that I have authentication working!!! It may have taken 7 hours and 30 minutes, but the API can sign people in safely and securely! Now, it’s time to… well, how do I say this… make the actual website. I know, it’s so hard. All I’ve been doing is bugfixing the backend, it’ll be so nice to program in React again."}, {"post_id": 32063, "ts": "2026-07-20T23:21:35Z", "hours": 4.0053, "text": "Devlog #4 Okay, so I missed last week… HOWEVER, I have made an API! Which is great. It’s going pretty good so far, but it’s not finished yet, and when I finish it, I will finally be able to finish the app! (let’s go)"}, {"post_id": 24900, "ts": "2026-07-08T19:08:41Z", "hours": 3.5833, "text": "(Weekly) Devlog #3 Yes, I have decided that these devlogs will be weekly, because I have things to do and I don’t want to write them all the time! This week I got a ton of stuff done, the most major was adding pages to the site! I gotta get to work on those right away after I work on this devlog. I also did some general code cleanup and polish, and as you can see I added a top bar with tabs that let you switch between pages, as well as an account page and a settings page. I also started working on a Python REST API for the project, so it won’t just be frontend much longer."}, {"post_id": 20995, "ts": "2026-07-02T18:53:00Z", "hours": 3.1369, "text": "Devlog #3 This past week I have been working on the actual bulletin board part of the bulletin page. I found a nice react library (not Motion) that lets me do what I want, but the documentation was realy bad, and it took me a couple (unlogged) hours trying to figure out how to use it. But now I have a proper bulletin, I just have to figure out how to feed data to it and polish it up a lot."}, {"post_id": 13772, "ts": "2026-06-22T15:59:28Z", "hours": 1.2197, "text": "Devlog #2 I have created a new React app for ClubHub after making a simple React test, and after a very long hour of programming, I have created the layout for the main bulletin of the app! The top row is the part with all of the tabs for different parts of the site, the side row is where all of the filters for different clubs are going to go, and the middle area is where the bulletin board is going to go. That one’s gonna be hard, but I found a thing called Motion that might let me do it. I’ll see you in the next devlog (later today)!"}, {"post_id": 6464, "ts": "2026-06-10T21:29:24Z", "hours": 0.5061, "text": "I’ve begun working on the prototype UI for my school club management project, ClubHub. It’s made in Google Slides. Tomorrow I will probably start learning React (y’know, to actually make the project)"}]...
|
Title: ClubHub by @Mottl | Stardance
Devlogs:
I’v Title: ClubHub by @Mottl | Stardance
Devlogs:
I’ve begun working on the prototype UI for my school club management project, ClubHub. It’s made in Google Slides. Tomorrow I will probably start learning React (y’know, to actually make the project)
Devlog #2 I have created a new React app for ClubHub after making a simple React test, and after a very long hour of programming, I have created the layout for the main bulletin of the app! The top row is the part with all of the tabs for different parts of the site, the side row is where all of the filters for different clubs are going to go, and the middle area is where the bulletin board is going to go. That one’s gonna be hard, but I found a thing called Motion that might let me do it. I’ll see you in the next devlog (later today)!
Devlog #3 This past week I have been working on the actual bulletin board part of the bulletin page. I found a nice react library (not Motion) that lets me do what I want, but the documentation was realy bad, and it took me a couple (unlogged) hours trying to figure out how to use it. But now I have a proper bulletin, I just have to figure out how to feed data to it and polish it up a lot.
(Weekly) Devlog #3 Yes, I have decided that these devlogs will be weekly, because I have things to do and I don’t want to write them all the time! This week I got a ton of stuff done, the most major was adding pages to the site! I gotta get to work on those right away after I work on this devlog. I also did some general code cleanup and polish, and as you can see I added a top bar with tabs that let you switch between pages, as well as an account page and a settings page. I also started working on a Python REST API for the project, so it won’t just be frontend much longer.
Devlog #4 Okay, so I missed last week… HOWEVER, I have made an API! Which is great. It’s going pretty good so far, but it’s not finished yet, and when I finish it, I will finally be able to finish the app! (let’s go)
Signup Page!!!!! You (probably like two people) may have been wondering what I have been doing the past two weeks, and I am proud to announce that I have authentication working!!! It may have taken 7 hours and 30 minutes, but the API can sign people in safely and securely! Now, it’s time to… well, how do I say this… make the actual website. I know, it’s so hard. All I’ve been doing is bugfixing the backend, it’ll be so nice to program in React again.
#Plan to LOCK IN! This contest ends in a month and a half, and I have a plan to get it done in 10 days! The picture below is all I have left to do in ClubHub, and all there is is this! If I do one thing every day, then I can get this thing done before the deadline! Time to get to work!...
|
1792497306.8210258
|
1793102106.8210258
|
|
1009
|
My awesome macropad! by @Bill | Stardance
|
Bill
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Bill | Stardance
|
1792748937.8716805
|
1793353737.8716805
|
|
1010
|
My first slack bot! by @Bill | Stardance
|
Bill
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @Bill | Stardance
|
1792644717.5467691
|
1793249517.5467691
|
|
1011
|
ProgCal by @hatya-mouse | Stardance
|
hatya-mouse
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: ProgCal by @hatya-mouse | Stardance
|
1792918211.5358849
|
1793782211.5358849
|
|
1012
|
My first slack bot! by @arma | Stardance
|
arma
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @arma | Stardance
|
1792684294.217782
|
1793289094.217782
|
|
1013
|
My first slack bot! by @matthiaslubbertsen | Stard My first slack bot! by @matthiaslubbertsen | Stardance...
|
matthiaslubbertsen
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @matthiaslubbertsen Title: My first slack bot! by @matthiaslubbertsen | Stardance...
|
1792666313.5165608
|
1793271113.5165608
|
|
1014
|
Untitled project by @Jacob | Stardance
|
Jacob
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @Jacob | Stardance
|
1792709669.8063197
|
1793314469.8063197
|
|
1015
|
Untitled project by @Jacob | Stardance
|
Jacob
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @Jacob | Stardance
|
1792619508.2462587
|
1793224308.2462587
|
|
1016
|
Untitled project by @SimDev | Stardance
|
SimDev
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @SimDev | Stardance
|
1792558258.6533628
|
1793163058.6533628
|
|
1017
|
OBSTICLE AVOIDING CAR by @aarav_ | Stardance
|
aarav_
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: OBSTICLE AVOIDING CAR by @aarav_ | Stardanc Title: OBSTICLE AVOIDING CAR by @aarav_ | Stardance...
|
1792504483.2907887
|
1793109283.2907887
|
|
1018
|
My awesome macropad! by @aarav_ | Stardance
|
aarav_
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @aarav_ | Stardance
|
1792597899.2388363
|
1793202699.2388363
|
|
1019
|
My awesome macropad! by @Joshua_Westrick | Stardan My awesome macropad! by @Joshua_Westrick | Stardance...
|
Joshua_Westrick
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Joshua_Westrick | Title: My awesome macropad! by @Joshua_Westrick | Stardance...
|
1792781461.3875456
|
1793386261.3875456
|
|
1020
|
My first slack bot! by @aarav_ | Stardance
|
aarav_
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @aarav_ | Stardance
|
1792507834.3387954
|
1793112634.3387954
|
|
1021
|
Untitled project by @Enginerd14 | Stardance
|
Enginerd14
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @Enginerd14 | Stardance
|
1792536668.251087
|
1793141468.251087
|
|
1022
|
JARVIS by @aarav_ | Stardance
|
aarav_
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-01T18:52:04Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "J.A.R.V.I.S - Just A Rather Very Intelligent System “Sometimes you gotta run before you can walk.” - Tony Stark An AI desktop assistant inspired by Iron Man’s JARVIS. Built with Python, powered by free-first local command routing with optional Groq cloud AI, and designed to combine voice control, desktop automation, memory, productivity helpers, plugin safety, release checks, and a cinematic cyber interface in one Windows-first system. J.A.R.V.I.S can run in a keyless degraded mode. Local rules, the desktop UI, memory helpers, health checks, and many system commands work without API keys. Groq, Spotify, Gemini, and other cloud-backed capabilities are optional integrations.", "repo": "https://github.com/namanisnaman/JARVIS", "demo": "https://youtu.be/-wQnZ4pi9sM?si=OQfAUqn5ei09KKH6"}]...
|
[{"post_id": 366, "ts": "2026- [{"post_id": 366, "ts": "2026-06-01T18:18:29Z", "hours": 0.2644, "text": "I AM CURETLY WORKING ON JARVIS"}]...
|
Title: JARVIS by @aarav_ | Stardance
Devlogs:
I A Title: JARVIS by @aarav_ | Stardance
Devlogs:
I AM CURETLY WORKING ON JARVIS
Ships:
J.A.R.V.I.S - Just A Rather Very Intelligent System “Sometimes you gotta run before you can walk.” - Tony Stark An AI desktop assistant inspired by Iron Man’s JARVIS. Built with Python, powered by free-first local command routing with optional Groq cloud AI, and designed to combine voice control, desktop automation, memory, productivity helpers, plugin safety, release checks, and a cinematic cyber interface in one Windows-first system. J.A.R.V.I.S can run in a keyless degraded mode. Local rules, the desktop UI, memory helpers, health checks, and many system commands work without API keys. Groq, Spotify, Gemini, and other cloud-backed capabilities are optional integrations....
|
1792842618.2179453
|
1792929018.2179453
|
|
1023
|
My awesome macropad! by @Joey | Stardance
|
Joey
|
1
|
0.0
|
1
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-03T02:51:18Z", "hours": 0.0, "multiplier": 5.0, "payout": 1, "blessing": "neutral", "text": "I made a six key macropad with a basic simplistic design. Being a beginner to these programs, it was quite difficult to understand. However, the communtiy was very helpful and incredibly nice. I’m very proud of this since it’s my first attempt doing these kinds of things.", "repo": "https://github.com/joeydooom/Hackclub-Hackpad", "demo": ""}]...
|
[{"post_id": 1231, "ts": "2026 [{"post_id": 1231, "ts": "2026-06-03T02:44:00Z", "hours": 0.2606, "text": "A six key marcopad for w,a,s,d, q, and e. It’s already finished but i dont really know how to submit it"}]...
|
Title: My awesome macropad! by @Joey | Stardance
Title: My awesome macropad! by @Joey | Stardance
Devlogs:
A six key marcopad for w,a,s,d, q, and e. It’s already finished but i dont really know how to submit it
Ships:
I made a six key macropad with a basic simplistic design. Being a beginner to these programs, it was quite difficult to understand. However, the communtiy was very helpful and incredibly nice. I’m very proud of this since it’s my first attempt doing these kinds of things....
|
1792842619.0813446
|
1792929019.0813446
|
|
1024
|
Mo' Ability by @Icky_Vicky | Stardance
|
Icky_Vicky
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Mo' Ability by @Icky_Vicky | Stardance
|
1792540097.7348094
|
1793144897.7348094
|
|
1025
|
Seergraph by @Zephyr | Stardance
|
Zephyr
|
0
|
57.6
|
0
|
[]
|
[{"post_id": 26436, "ts": "202 [{"post_id": 26436, "ts": "2026-07-11T07:15:52Z", "hours": 9.3689, "text": "NEW DEVLOG!! I’m terribly behind on a lot of work but that’s okay, lets keep going So the call extraction is proving to be MUCH more difficult that I expected. Turns out, there are a lot of ways to call a callable symbol in javascript But that’s fine, I’ve gotten most of it down now, just a few more cases to handle: the this keyword return values indirect parameter calls After I’m done with call extraction, all that’s left to do is figure out how im going to save this graph, then I can use it to make my architectural linter CLI :D"}, {"post_id": 19845, "ts": "2026-07-01T07:42:24Z", "hours": 10.045, "text": "Its time…. for another devlog :> Okay so, here’s a concise list describing what I’ve accomplished: Make binding symbols to represent symbols which have been imported from another file Create aliases edges to connect binding symbols to the actual symbol, OR to connect namespace import symbols to the actual file being imported Create lookup / index tables for my data, then realize that i don’t need all of them during graph build time, then delete some of the indexes Major refactor of source code to use the new GraphBuilder class instead of manually collecting symbols/edges Write testttssssssss Clean up types (it was a mess, but its better now) Now, I’m changing my main analyzer entry point to support multi-file tests without having to actually create the files (right now, it only supports code input of filepath input). After that, i can FINALLY. AND I MEAN FINALLY. move on to call extraction :> (and yes, this is yet another screenshot of the terminal / IDE cuz im still trying to extract data, theres not much to show )"}, {"post_id": 16167, "ts": "2026-06-26T08:43:08Z", "hours": 9.5747, "text": "NEW DEVLOGGG. Okay so i’ve been super busy recently so not a lot of work done :> but i completed the export extraction, and also import extraction (which was surprisingly easy because turns out ts-morph does a lot of the heavy lifting for me)! Was going to move on to call extraction, when i realized a few things: I need to resolve my imports. How am i supposed to know what an imported symbol is referring to if they don’t have a symbol? I need to create aliases edges for my binding symbols (which are technically dummy symbols used to represent the imported symbol that is being referred to), in order to connect them to their actual symbol. I need lookup tables! :0 which i completely forgot about. So now I’ll be creating lookup tables as well via incremental updates. :> After i resolve the above, i can FINALLY move on to call extraction I’ve also decided to change what my project is for! Having a graph representation of an actual codebase is super powerful, so I’ll be using it to make some sort of architectural linter (like eslint but for architecture instead of code syntax) This is what i have in mind currently: layers : { api : \" src/routes/** \" , services : \" src/services/** \" , repositories : \" src/repositories/** \" , }, rules : [ // Layer rules — explicit forbidden edges noCrossLayerCalls ({ from : \" api \" , to : \" repositories \" }), // Path rules — enforce mandatory intermediaries mustGoThrough ({ from : \" api \" , to : \" repositories \" , through : \" services \" }), // Cluster rules — graph-inferred boundaries noUnexpectedCrossClusterCalls (), allowCrossClusterCall ({ from : \" payments \" , to : \" shared \" }), ] Obviously, its still a work in progress :> but i like where its going, will be working much more often hopefully (P.S, the image shows my export extraction details)"}, {"post_id": 11722, "ts": "2026-06-19T02:52:54Z", "hours": 9.7944, "text": "NEW DEVLOG. Okay so: I finished my symbol extraction and I have moved on to extracting exports :0 Unfortunately, all i have to show for it is STILL console output, but we’re getting there :> For the symbol extraction, i did a MAJOR refactoring of my code to use generator functions, and I’m much happier with the output now :D I also added extraction of some other symbols, and change the object extraction strategy to use a recursive approach (if i hit a property that contains an object, i recurse). For export extraction, I go over all export symbols that I found inside of the source file and then I handle their initializers. Basically: see what is being exported, and make an edge from the file to the export :> Some hard cases that I have to handle include default exports and export specifiers. These aren’t exactly the same as other types of exports in the parsed AST, so I need to make sure some weird cases are working as well. Next step is finishing my export extraction, writing a buncha tests, and then moving on to call extraction."}, {"post_id": 9048, "ts": "2026-06-15T03:16:20Z", "hours": 9.1664, "text": "Okay devlog time :> So far I’ve been really focused on accurate symbol extraction from the AST, I need to have enough information extraction about what functions are actually useful enough to qualify as a symbol, because I don’t want a symbol for some random .map() callback function! Anyways, the image i’ve attached below is a dual view of the symbols im extracting. On the left, I’ve only got ids (for a quicker glance) and on the right I’ve got the full symbols for each id! Also, after the first devlog, I realized the complexity of the project and instantly decided to write tests, so I’ve been doing that as well :> I don’t want to break something accidentally in the future without even knowing smh So far, im creating a symbol for: non-exported variables that contain a function exported variables named classes named class’s methods named function declarations and arrow functions nested function declarations and arrow functions an object’s properties that are arrow functions/function expressions intermediate objects of a parent object that contains at least one callable descendant, that act as namespaces a function’s methods Right now, I still need to collect a symbol for: default exports, whether named or not types enums interfaces Anonymous classes stored in a variable After that, I need to write a couple of more tests, refactor my code a little (it’s pretty messy right now), and then move on to the call graph, where I’ll have to extract CallFacts (basically whenever a symbol is being called/referred to)"}, {"post_id": 6767, "ts": "2026-06-11T10:29:18Z", "hours": 9.6475, "text": "Okay! This is supposed to be a local tool that takes in a repository, creates a huge graph out of the entire thing (with relationships between imports, exports, function calls, etc), and then based on the graph, I’ll be able to answer questions like “what is this function for?”, or “What functions depend on this?” The first step is scanning the repo (the easy part). Doing this was quite easy, since I just needed to use node’s fs module. The next step is significantly more challenging: creating the graph. First, I’ll have to parse each file and get an AST out of it, then i’ll have to traverse it in order to collect all the information i need, along with all of the relationships. Currently, this is the only output i can screenshot since im just trying to correctly parse and collect the AST nodes x-x but yes, i think its going to turn out well in the future :>"}]...
|
Title: Seergraph by @Zephyr | Stardance
Devlogs:
Title: Seergraph by @Zephyr | Stardance
Devlogs:
Okay! This is supposed to be a local tool that takes in a repository, creates a huge graph out of the entire thing (with relationships between imports, exports, function calls, etc), and then based on the graph, I’ll be able to answer questions like “what is this function for?”, or “What functions depend on this?” The first step is scanning the repo (the easy part). Doing this was quite easy, since I just needed to use node’s fs module. The next step is significantly more challenging: creating the graph. First, I’ll have to parse each file and get an AST out of it, then i’ll have to traverse it in order to collect all the information i need, along with all of the relationships. Currently, this is the only output i can screenshot since im just trying to correctly parse and collect the AST nodes x-x but yes, i think its going to turn out well in the future :>
Okay devlog time :> So far I’ve been really focused on accurate symbol extraction from the AST, I need to have enough information extraction about what functions are actually useful enough to qualify as a symbol, because I don’t want a symbol for some random .map() callback function! Anyways, the image i’ve attached below is a dual view of the symbols im extracting. On the left, I’ve only got ids (for a quicker glance) and on the right I’ve got the full symbols for each id! Also, after the first devlog, I realized the complexity of the project and instantly decided to write tests, so I’ve been doing that as well :> I don’t want to break something accidentally in the future without even knowing smh So far, im creating a symbol for: non-exported variables that contain a function exported variables named classes named class’s methods named function declarations and arrow functions nested function declarations and arrow functions an object’s properties that are arrow functions/function expressions intermediate objects of a parent object that contains at least one callable descendant, that act as namespaces a function’s methods Right now, I still need to collect a symbol for: default exports, whether named or not types enums interfaces Anonymous classes stored in a variable After that, I need to write a couple of more tests, refactor my code a little (it’s pretty messy right now), and then move on to the call graph, where I’ll have to extract CallFacts (basically whenever a symbol is being called/referred to)
NEW DEVLOG. Okay so: I finished my symbol extraction and I have moved on to extracting exports :0 Unfortunately, all i have to show for it is STILL console output, but we’re getting there :> For the symbol extraction, i did a MAJOR refactoring of my code to use generator functions, and I’m much happier with the output now :D I also added extraction of some other symbols, and change the object extraction strategy to use a recursive approach (if i hit a property that contains an object, i recurse). For export extraction, I go over all export symbols that I found inside of the source file and then I handle their initializers. Basically: see what is being exported, and make an edge from the file to the export :> Some hard cases that I have to handle include default exports and export specifiers. These aren’t exactly the same as other types of exports in the parsed AST, so I need to make sure some weird cases are working as well. Next step is finishing my export extraction, writing a buncha tests, and then moving on to call extraction.
NEW DEVLOGGG. Okay so i’ve been super busy recently so not a lot of work done :> but i completed the export extraction, and also import extraction (which was surprisingly easy because turns out ts-morph does a lot of the heavy lifting for me)! Was going to move on to call extraction, when i realized a few things: I need to resolve my imports. How am i supposed to know what an imported symbol is referring to if they don’t have a symbol? I need to create aliases edges for my binding symbols (which are technically dummy symbols used to represent the imported symbol that is being referred to), in order to connect them to their actual symbol. I need lookup tables! :0 which i completely forgot about. So now I’ll be creating lookup tables as well via incremental updates. :> After i resolve the above, i can FINALLY move on to call extraction I’ve also decided to change what my project is for! Having a graph representation of an actual codebase is super powerful, so I’ll be using it to make some sort of architectural linter (like eslint but for architecture instead of code syntax) This is what i have in mind currently: layers : { api : " src/routes/** " , services : " src/services/** " , repositories : " src/repositories/** " , }, rules : [ // Layer rules — explicit forbidden edges noCrossLayerCalls ({ from : " api " , to : " repositories " }), // Path rules — enforce mandatory intermediaries mustGoThrough ({ from : " api " , to : " repositories " , through : " services " }), // Cluster rules — graph-inferred boundaries noUnexpectedCrossClusterCalls (), allowCrossClusterCall ({ from : " payments " , to : " shared " }), ] Obviously, its still a work in progress :> but i like where its going, will be working much more often hopefully (P.S, the image shows my export extraction details)
Its time…. for another devlog :> Okay so, here’s a concise list describing what I’ve accomplished: Make binding symbols to represent symbols which have been imported from another file Create aliases edges to connect binding symbols to the actual symbol, OR to connect namespace import symbols to the actual file being imported Create lookup / index tables for my data, then realize that i don’t need all of them during graph build time, then delete some of the indexes Major refactor of source code to use the new GraphBuilder class instead of manually collecting symbols/edges Write testttssssssss Clean up types (it was a mess, but its better now) Now, I’m changing my main analyzer entry point to support multi-file tests without having to actually create the files (right now, it only supports code input of filepath input). After that, i can FINALLY. AND I MEAN FINALLY. move on to call extraction :> (and yes, this is yet another screenshot of the terminal / IDE cuz im still trying to extract data, theres not much to show )
NEW DEVLOG!! I’m terribly behind on a lot of work but that’s okay, lets keep going So the call extraction is proving to be MUCH more difficult that I expected. Turns out, there are a lot of ways to call a callable symbol in javascript But that’s fine, I’ve gotten most of it down now, just a few more cases to handle: the this keyword return values indirect parameter calls After I’m done with call extraction, all that’s left to do is figure out how im going to save this graph, then I can use it to make my architectural linter CLI :D...
|
1792619629.2536116
|
1793224429.2536116
|
|
1026
|
spacepad by @mani | Stardance
|
mani
|
0
|
2.0
|
0
|
[]
|
[{"post_id": 17736, "ts": "202 [{"post_id": 17736, "ts": "2026-06-28T17:32:49Z", "hours": 0.0, "text": "made firmware in kmk for my space pad with 2 layers for 16 keys and rotary encoder"}, {"post_id": 7561, "ts": "2026-06-12T17:18:39Z", "hours": 0.0, "text": "completed the case"}, {"post_id": 3857, "ts": "2026-06-06T22:35:55Z", "hours": 1.0, "text": "made the top panel for the spacepad"}, {"post_id": 2822, "ts": "2026-06-05T17:24:55Z", "hours": 0.0, "text": "updated placements of silkscreen and made the switch plate in cad fusion 360 died on me so I think i will do it tomorrow"}, {"post_id": 1918, "ts": "2026-06-04T04:41:57Z", "hours": 0.0, "text": "silkscreen art placement made most of them from scratch like outpost logo alexren and stardust but most are slight adjustments😮💨"}, {"post_id": 1489, "ts": "2026-06-03T15:26:37Z", "hours": 0.0, "text": "routed all the traces of my space pad"}, {"post_id": 901, "ts": "2026-06-02T17:04:44Z", "hours": 1.0, "text": "i made the pcb for the space pad and attached the 3d models for the mockup 😮💨"}, {"post_id": 365, "ts": "2026-06-01T18:17:43Z", "hours": 0.0, "text": "made the schematics of the space pad made the all the connection based on guide"}]...
|
Title: spacepad by @mani | Stardance
Devlogs:
mad Title: spacepad by @mani | Stardance
Devlogs:
made the schematics of the space pad made the all the connection based on guide
i made the pcb for the space pad and attached the 3d models for the mockup 😮💨
routed all the traces of my space pad
silkscreen art placement made most of them from scratch like outpost logo alexren and stardust but most are slight adjustments😮💨
updated placements of silkscreen and made the switch plate in cad fusion 360 died on me so I think i will do it tomorrow
made the top panel for the spacepad
completed the case
made firmware in kmk for my space pad with 2 layers for 16 keys and rotary encoder...
|
1792907373.5380497
|
1793771373.5380497
|
|
1027
|
Untitled by @mani | Stardance
|
mani
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @mani | Stardance
|
1792921959.9941068
|
1793785959.9941068
|
|
1028
|
My awesome macropad! by @Icky_Vicky | Stardance
|
Icky_Vicky
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Icky_Vicky | Stard Title: My awesome macropad! by @Icky_Vicky | Stardance...
|
1792597923.191316
|
1793202723.191316
|
|
1029
|
Origin Engine by @aloyak | Stardance
|
aloyak
|
1
|
74.0
|
1696
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-29T14:54:41Z", "hours": 74.0, "multiplier": 19.01, "payout": 1696, "blessing": "neutral", "text": "I made a custom game engine from scratch! it has a fast opengl pixelart renderer, builtin physics, lighting, an entity-component system, a spatial audio system, terrain system, it can load and save scenes on the fly, supports many 3d asset extensions… Its what i used to create my other big project! (JSP) the engine is cross-platform and works right out of the box for linux, windows and web!! and also it comes with a lightweight level editor and ive also made a website for it Hope you like it!! made with <3 from @aloyak", "repo": "https://github.com/aloyak/origin", "demo": "https://origin.aloyak.dev/"}]...
|
[{"post_id": 57380, "ts": "202 [{"post_id": 57380, "ts": "2026-08-29T14:44:05Z", "hours": 5.4342, "text": "ORIGIN ENGINE version 0.19.3 First ship is coming up soon! Even tho ive been working on really exciting stuff, i really would like to focus on actually learning and having a deep enough understanding of vulkan and other stuff like the best engine’s architecture before actually logging and building something open and usable, thats why i feel this is a good place to finally ship this project as it is and maybe come back to it at some point Pre-ship checklist! I’ve updated the website! now you have a few new sections with new information like the game i build using this engine and other cool stuff! published a new version to the github releases page (0.19.3 i think), with the binaries for the demo game and the sandbox for both windows and linux! the web build is still there on the website but it is marked as legacy tho Its been super fun to work on this and ive learnt a lot but i really really really think i could make something so much better with all the knowledge i now have and with some serious research, this is pretty much what ive explained in most of all the previous devlogs (the last 2 or 3) I’ve been working on applying some of the stuff ive been working on to the engine, like the new renderer class its now pretty much ported nicely! ive also tested that everything worked cross platform and yay! the project is very ready to hold any new game or project you might wanna do with it, although i might wanna make a quick tutorial on how to work with the engine on a github repo cuz its not very intuitive Known issue I’ve been trying to add support to the engine for builtin shaders but ive realized that its a super deeper problem than what i was expecting, id honestly do something like making all the shaders be done with something like slang and then compile them to spirv without any glsl intermediary PD: the video you see is a demo scene you can find at assets/scenes/physics.scene if you wanna try it by yourself!!!"}, {"post_id": 54613, "ts": "2026-08-25T17:11:59Z", "hours": 10.0381, "text": "ORIGIN ENGINE I’ve finally managed to port enough of the original engine to setup an imgui layer to have this little built-in launcher! it currently only works when using opengl, but its completely supported by both the windowing backends (glfw & sdl3) Its hard to make videos like this on a steamdeck so please like lol. Other stuff I completely restructured the new engine architecture to be a layered system, the engine holds a stack of layers and updates them independently! each layer holds stuff like OnAttach OnLateUpdate OnEvent etc, which is a much better approach compared to what we had before! I created a completely new custom file system, as the sandbox and games use completely different files and base directories, you can now mount/dismount different “aliases” for each program, so you can find your assets easily with custom virtual paths like sandbox://settings.json or project://scenes/scene.json Literally ported the scene/entity system right from the previous version, but it is a lot smaller currently, because the previous one wasnt really good, we now can load scenes from a file but now those get added to a scene stack, which is a lot more efficient if you wanna load them again! Overall the project’s code quality is so much better too!! After these bases are set im gonna be focusing on getting a full render layer working with at least opengl, even tho the vulkan renderer is already setup… PD: Origin Zero is just the new “protoype” name i gave it, just like with when i started this project i called it Origin “Zeus” lmao"}, {"post_id": 53290, "ts": "2026-08-23T19:02:52Z", "hours": 9.1458, "text": "ORIGIN ENGINE I’m sorry in advance that these and probably the next few devlogs wont have very exiting things or new and awesome information but sometimes you gotta focus on boring structural stuff that its just not really fun… The new Project-Based System The engine is now very dependent on the sandbox editor, sort of like a symbiotic relationship between the sandbox and your code editor, because thats where you will not only handle your assets but also play the game. The previous version just had the sandbox to be a tiny map editor tool that not even i would use half of the time The project (also called environment) then would have its own “environment” literally where all your assets would be included, with very little naming restrictions, this would make working on the project super easy and itd be easy too to use git with it (maybe build a builtin git UI??? it could be cool) I’ve already built the base for it and I’ve already added support for ImGui only for the OpenGL backend, i was thinking of adding a different UI system but this one will do for now :))"}, {"post_id": 51278, "ts": "2026-08-20T20:19:45Z", "hours": 8.3647, "text": "ORIGIN ENGINE A NEW UPDATE! I’m building a huge update for the origin engine! it might even be considered a new engine all together. The same philosophy is still there but I’m re-writting and refactoring the base structure of the whole engine. For now this refactor is close source tho, ill publish it once its ready for ship! What we currently have: I have the structure already though: A new project-based system where all the shader compilation and asset handling is done for each project, this + a simple abstraction layer should allow the sandbox to be a hugely more important tool as you will be able to play your game right in the editor! Compile time switch between SDL3 or GLFW for windowing, input is not yet “ported” if you consider it that way What i wanna add but may be difficult Runtime api switching between OpenGL, Vulkan and DirectX3D 11. even tho for now i have a super basic abstraction layer and only opengl is even able to initialize so….. maybe too hard i hope i manage to do it tho , was thinking of doing a similar thing for switching between physics engines like bullet3, physicsX or Box3D, this is very much in the future of course Project export/ editor previews This is a major step and im learning a lot!! but its very difficult to handle new stuff like vulkan with other new c++ architectural stuff, hope it goes well"}, {"post_id": 50196, "ts": "2026-08-19T10:21:29Z", "hours": 7.615, "text": "ORIGIN ENGINE Another update to the best game engine there is that starts with the letter “O” (i think). Today’s devlog is small, bust most likely will be start of a new series of very much needed updates to the engine!. It’s important to note that most of the things ive been working on are not yet finished :(( New stuff! New things that are completely finished: Fix the sandbox UI, it was missing imgui flags from previous bug fixes i had to do because the docking branch of imgui was broken, they fixed it so i just rolled back! Cleaned up the rendering class, specially important for the new updates im working on, because im gonna need to do a hell lot of abstraction! Things im working on Im taking the current base of the engine to make a new “modular” system just for the love of the game, the most basic thing ive done is to allow the user to choose between SDL3 or GLFW for windowing, although input is currently only handled with SDL3 regardless…. There’s a lot of exiting stuff coming SOON^(TM), hope you like them!! (vulkan?, probably not lmfao) PD: yes! this is the origin engine running nicely in a steamdeck!!!"}, {"post_id": 41213, "ts": "2026-08-05T09:19:15Z", "hours": 6.7264, "text": "ORIGIN ENGINE Yippi another round of improvements to the best and certainty not over engineered game engine out there! Out of all the things ive been working on with the engine ive only really finished one, but it was rather a big change tho NEW input system I’ve added a new action-based input system that handles by itself connected devices (because we now support gamepads!!! ), input modes and preferences, keybinds and settings all in one simple system The new system instead of reading “raw” input from SDL3 now instead has a wrapper that sets all input to “actions”. All actions have assigned a certain key/button/axis etc… It allows you to use keyboard/mouse and gamepad all at the same time Games can now have support for handheld devices like your steamdeck! Support for precompiled shaders (GLSL -> SPV) This is still work in progress!! The engine itself supports the compiled GLSL files very quickly but the problem is to get those shaders to compile in the first place The shader class gets the relative path for the shader, before actually compiling it, it checks if theres a file with the same name but that ends with “.spv”, in that case it uses that one Right now theres not an easy utility script that will handle compilation for you, that needs to be done next!! Dynamically Chunked Terrain Collisions Very early and of course WIP, I still haven’t done much but i have a pretty good idea of how this will work: You bake the local position of all the vertex of a terrain model and then, when you require it, you get all the triangles close to the player in real time (with a basic “chunked” system), then Bullet3 generates that mesh collider rather quickly as the mesh is not so big (this will probably require multi-threading ). More on this on the next devlog Other small changes Fixed the sandbox not having docking enabled Added ImPlot3D to project, might use it at some point PD: This picture is from my other project that you should check out! It showcases the new terrain system (WIP)"}, {"post_id": 33210, "ts": "2026-07-22T22:17:42Z", "hours": 8.1519, "text": "ORIGIN ENGINE I’ve been adding some quality of life changes that make working with this engine a lot easier, which means more abstraction in some cases which is not always the best but whatever. Ive also worked very hard on fixing and improving the physics (even considered porting it to now use Box3D instead of Bullet3, but that will probably happen in the far future, and Bullet3 will be kept as a fallback) What have i been working on i see you ask? Added the ParentEntityComponent , a very simple work around for the lack of parent-child entities on my engine, this will probably be deprecated sooner or later but its a decent solution instead of doing all the work all at once Added GetRefreshRate to window class, so for example, your game can set the target fps based on this Changes to physics system (Bullet3) Fixed a super hard to find bug where models vertex and physics-engine vertex would have shifter coords and would make the objects act weird on real time, this is such a huge change, it makes physics really good to play with, see the video!! Added functions to apply force, impulse and torque to a dynamic rigidbody Added the teleport function for kinematic rigidbodies Added getLinearVelocity and getAngularVelocity Added options to freeze rotation on independent axis HUGE: allow the engine to support different physics worlds to live in one same game in real time! this needs some work tho, not featured in the video PD: This is getting super nice but also growing in complexity, once i finish with my game i will surely start improving the overall structure and start thinking about more serious changes, maybe another graphics api????"}, {"post_id": 27690, "ts": "2026-07-13T14:02:40Z", "hours": 9.3322, "text": "ORIGIN ENGINE Yippie! another update to the engine powering my game, i’ve added quite a lot of things but also managed to clean up some dead code in the way. The most excinting new thing is probably the new postprocessing layer system! this is what ive added in the past 3 weeks: Postprocessing layer: you can now code different vertex & fragment shaders that drawn on top of the main buffer, you can stack as many as youd like in order to create many new cool effects spent hours trying to fix the sandbox editor’s rendering being completely broken, took about 3-4 days lol added new getters to camera like a directly inversed view matrix or setMat4() and setTexture() functions with shaders add localToWorld() and worldToLocal() to the transform class fixed specular lighting leaking to some dark areas fix handle untextured materials in model import added a built-in user settings save/load system based on json serialization refactor a part of the audio system to now have built-in fade ins/out, volume control and async background music The biggest change coming up would probably be to develop a dynamic rendering system that allows me to use different cameras rendering at the same time, as I’ll probably need it for JSP PD: this engine is being used for my current main project (almost 100 hours!), please check it out! JSP: https://stardance.hackclub.com/projects/14066"}, {"post_id": 11317, "ts": "2026-06-18T14:52:15Z", "hours": 9.5539, "text": "ORIGIN ENGINE This is my custom engine that im using for my other big project, the Janitor Space Program (go check it out!: https://stardance.hackclub.com/projects/14066 ), most of these changes come from having to create or update an engine feature so that the game im building is easier and faster to develop, and in the meantime im also upgrading this engine to something more powerful and mature, although i feel like im making it also a bit more complex or spaghetti, ill work on that later over this last 2 weeks ive added so many features like: improved logging library, allows you to use formatting directly support for embedded textures in .fbx models added a lookAt() method to the camera component fixed web support for the audio system added more features and functions to the in-house math library, like the cross and dot products, a 4x4 Matrix and other small stuff scenes now can be either “.json” or “.scene” sandbox: shortcut to align an entity to the sandbox scene view camera added color tint to the skybox component added quick line rendering for fast debugging, probably needs refactoring tho added LateLoop() , which obviously happens after Loop() and its mainly used for UI and stuff added setTargetFps() so that gpu doesnt work to 100% if vsync is disabled changed the builtin shaders path to assets/shaders/builtin wip: added imgui support to the web builds Most relevant new features: added instanced rendering! still sort of a WIP added real-time texture editing, allows the cpu to have ownership of a texture instead of the gpu and do whatever it wants with it, currently just paint it wip: huge refactoring of the render class to allow for different postprocessing layers to render on top of each other with custom shaders, this allows for any kind of postprocessing effect to be made without much issue, i managed to get a simple vignette shader working quickly! the render class still needs some cleanup tho This was fun but if they gave me an euro for every seg fault ive endured elon musk would be small next to me. i love to see how this small side project i started long ago is now something a lot bigger than i expected, this literally started as a learnopengl tutorial :))"}]...
|
Title: Origin Engine by @aloyak | Stardance
Devlo Title: Origin Engine by @aloyak | Stardance
Devlogs:
ORIGIN ENGINE This is my custom engine that im using for my other big project, the Janitor Space Program (go check it out!: https://stardance.hackclub.com/projects/14066 ), most of these changes come from having to create or update an engine feature so that the game im building is easier and faster to develop, and in the meantime im also upgrading this engine to something more powerful and mature, although i feel like im making it also a bit more complex or spaghetti, ill work on that later over this last 2 weeks ive added so many features like: improved logging library, allows you to use formatting directly support for embedded textures in .fbx models added a lookAt() method to the camera component fixed web support for the audio system added more features and functions to the in-house math library, like the cross and dot products, a 4x4 Matrix and other small stuff scenes now can be either “.json” or “.scene” sandbox: shortcut to align an entity to the sandbox scene view camera added color tint to the skybox component added quick line rendering for fast debugging, probably needs refactoring tho added LateLoop() , which obviously happens after Loop() and its mainly used for UI and stuff added setTargetFps() so that gpu doesnt work to 100% if vsync is disabled changed the builtin shaders path to assets/shaders/builtin wip: added imgui support to the web builds Most relevant new features: added instanced rendering! still sort of a WIP added real-time texture editing, allows the cpu to have ownership of a texture instead of the gpu and do whatever it wants with it, currently just paint it wip: huge refactoring of the render class to allow for different postprocessing layers to render on top of each other with custom shaders, this allows for any kind of postprocessing effect to be made without much issue, i managed to get a simple vignette shader working quickly! the render class still needs some cleanup tho This was fun but if they gave me an euro for every seg fault ive endured elon musk would be small next to me. i love to see how this small side project i started long ago is now something a lot bigger than i expected, this literally started as a learnopengl tutorial :))
ORIGIN ENGINE Yippie! another update to the engine powering my game, i’ve added quite a lot of things but also managed to clean up some dead code in the way. The most excinting new thing is probably the new postprocessing layer system! this is what ive added in the past 3 weeks: Postprocessing layer: you can now code different vertex & fragment shaders that drawn on top of the main buffer, you can stack as many as youd like in order to create many new cool effects spent hours trying to fix the sandbox editor’s rendering being completely broken, took about 3-4 days lol added new getters to camera like a directly inversed view matrix or setMat4() and setTexture() functions with shaders add localToWorld() and worldToLocal() to the transform class fixed specular lighting leaking to some dark areas fix handle untextured materials in model import added a built-in user settings save/load system based on json serialization refactor a part of the audio system to now have built-in fade ins/out, volume control and async background music The biggest change coming up would probably be to develop a dynamic rendering system that allows me to use different cameras rendering at the same time, as I’ll probably need it for JSP PD: this engine is being used for my current main project (almost 100 hours!), please check it out! JSP: https://stardance.hackclub.com/projects/14066
ORIGIN ENGINE I’ve been adding some quality of life changes that make working with this engine a lot easier, which means more abstraction in some cases which is not always the best but whatever. Ive also worked very hard on fixing and improving the physics (even considered porting it to now use Box3D instead of Bullet3, but that will probably happen in the far future, and Bullet3 will be kept as a fallback) What have i been working on i see you ask? Added the ParentEntityComponent , a very simple work around for the lack of parent-child entities on my engine, this will probably be deprecated sooner or later but its a decent solution instead of doing all the work all at once Added GetRefreshRate to window class, so for example, your game can set the target fps based on this Changes to physics system (Bullet3) Fixed a super hard to find bug where models vertex and physics-engine vertex would have shifter coords and would make the objects act weird on real time, this is such a huge change, it makes physics really good to play with, see the video!! Added functions to apply force, impulse and torque to a dynamic rigidbody Added the teleport function for kinematic rigidbodies Added getLinearVelocity and getAngularVelocity Added options to freeze rotation on independent axis HUGE: allow the engine to support different physics worlds to live in one same game in real time! this needs some work tho, not featured in the video PD: This is getting super nice but also growing in complexity, once i finish with my game i will surely start improving the overall structure and start thinking about more serious changes, maybe another graphics api????
ORIGIN ENGINE Yippi another round of improvements to the best and certainty not over engineered game engine out there! Out of all the things ive been working on with the engine ive only really finished one, but it was rather a big change tho NEW input system I’ve added a new action-based input system that handles by itself connected devices (because we now support gamepads!!! ), input modes and preferences, keybinds and settings all in one simple system The new system instead of reading “raw” input from SDL3 now instead has a wrapper that sets all input to “actions”. All actions have assigned a certain key/button/axis etc… It allows you to use keyboard/mouse and gamepad all at the same time Games can now have support for handheld devices like your steamdeck! Support for precompiled shaders (GLSL -> SPV) This is still work in progress!! The engine itself supports the compiled GLSL files very quickly but the problem is to get those shaders to compile in the first place The shader class gets the relative path for the shader, before actually compiling it, it checks if theres a file with the same name but that ends with “.spv”, in that case it uses that one Right now theres not an easy utility script that will handle compilation for you, that needs to be done next!! Dynamically Chunked Terrain Collisions Very early and of course WIP, I still haven’t done much but i have a pretty good idea of how this will work: You bake the local position of all the vertex of a terrain model and then, when you require it, you get all the triangles close to the player in real time (with a basic “chunked” system), then Bullet3 generates that mesh collider rather quickly as the mesh is not so big (this will probably require multi-threading ). More on this on the next devlog Other small changes Fixed the sandbox not having docking enabled Added ImPlot3D to project, might use it at some point PD: This picture is from my other project that you should check out! It showcases the new terrain system (WIP)
ORIGIN ENGINE Another update to the best game engine there is that starts with the letter “O” (i think). Today’s devlog is small, bust most likely will be start of a new series of very much needed updates to the engine!. It’s important to note that most of the things ive been working on are not yet finished :(( New stuff! New things that are completely finished: Fix the sandbox UI, it was missing imgui flags from previous bug fixes i had to do because the docking branch of imgui was broken, they fixed it so i just rolled back! Cleaned up the rendering class, specially important for the new updates im working on, because im gonna need to do a hell lot of abstraction! Things im working on Im taking the current base of the engine to make a new “modular” system just for the love of the game, the most basic thing ive done is to allow the user to choose between SDL3 or GLFW for windowing, although input is currently only handled with SDL3 regardless…. There’s a lot of exiting stuff coming SOON^(TM), hope you like them!! (vulkan?, probably not lmfao) PD: yes! this is the origin engine running nicely in a steamdeck!!!
ORIGIN ENGINE A NEW UPDATE! I’m building a huge update for the origin engine! it might even be considered a new engine all together. The same philosophy is still there but I’m re-writting and refactoring the base structure of the whole engine. For now this refactor is close source tho, ill publish it once its ready for ship! What we currently have: I have the structure already though: A new project-based system where all the shader compilation and asset handling is done for each project, this + a simple abstraction layer should allow the sandbox to be a hugely more important tool as you will be able to play your game right in the editor! Compile time switch between SDL3 or GLFW for windowing, input is not yet “ported” if you consider it that way What i wanna add but may be difficult Runtime api switching between OpenGL, Vulkan and DirectX3D 11. even tho for now i have a super basic abstraction layer and only opengl is even able to initialize so….. maybe too hard i hope i manage to do it tho , was thinking of doing a similar thing for switching between physics engines like bullet3, physicsX or Box3D, this is very much in the future of course Project export/ editor previews This is a major step and im learning a lot!! but its very difficult to handle new stuff like vulkan with other new c++ architectural stuff, hope it goes well
ORIGIN ENGINE I’m sorry in advance that these and probably the next few devlogs wont have very exiting things or new and awesome information but sometimes you gotta focus on boring structural stuff that its just not really fun… The new Project-Based System The engine is now very dependent on the sandbox editor, sort of like a symbiotic relationship between the sandbox and your code editor, because thats where you will not only handle your assets but also play the game. The previous version just had the sandbox to be a tiny map editor tool that not even i would use half of the time The project (also called environment) then would have its own “environment” literally where all your assets would be included, with very little naming restrictions, this would make working on the project super easy and itd be easy too to use git with it (maybe build a builtin git UI??? it could be cool) I’ve already built the base for it and I’ve already added support for ImGui only for the OpenGL backend, i was thinking of adding a different UI system but this one will do for now :))
ORIGIN ENGINE I’ve finally managed to port enough of the original engine to setup an imgui layer to have this little built-in launcher! it currently only works when using opengl, but its completely supported by both the windowing backends (glfw & sdl3) Its hard to make videos like this on a steamdeck so please like lol. Other stuff I completely restructured the new engine architecture to be a layered system, the engine holds a stack of layers and updates them independently! each layer holds stuff like OnAttach OnLateUpdate OnEvent etc, which is a much better approach compared to what we had before! I created a completely new custom file system, as the sandbox and games use completely different files and base directories, you can now mount/dismount different “aliases” for each program, so you can find your assets easily with custom virtual paths like sandbox://settings.json or project://scenes/scene.json Literally ported the scene/entity system right from the previous version, but it is a lot smaller currently, because the previous one wasnt really good, we now can load scenes from a file but now those get added to a scene stack, which is a lot more efficient if you wanna load them again! Overall the project’s code quality is so much better too!! After these bases are set im gonna be focusing on getting a full render layer working with at least opengl, even tho the vulkan renderer is already setup… PD: Origin Zero is just the new “protoype” name i gave it, just like with when i started this project i called it Origin “Zeus” lmao
ORIGIN ENGINE version 0.19.3 First ship is coming up soon! Even tho ive been working on really exciting stuff, i really would like to focus on actually learning and having a deep enough understanding of vulkan and other stuff like the best engine’s architecture before actually logging and building something open and usable, thats why i feel this is a good place to finally ship this project as it is and maybe come back to it at some point Pre-ship checklist! I’ve updated the website! now you have a few new sections with new information like the game i build using this engine and other cool stuff! published a new version to the github releases page (0.19.3 i think), with the binaries for the demo game and the sandbox for both windows and linux! the web build is still there on the website but it is marked as legacy tho Its been super fun to work on this and ive learnt a lot but i really really really think i could make something so much better with all the knowledge i now have and with some serious research, this is pretty much what ive explained in most of all the previous devlogs (the last 2 or 3) I’ve been working on applying some of the stuff ive been working on to the engine, like the new renderer class its now pretty much ported nicely! ive also tested that everything worked cross platform and yay! the project is very ready to hold any new game or project you might wanna do with it, although i might wanna make a quick tutorial on how to work with the engine on a github repo cuz its not very intuitive Known issue I’ve been trying to add support to the engine for builtin shaders but ive realized that its a super deeper problem than what i was expecting, id honestly do something like making all the shaders be done with something like slang and then compile them to spirv without any glsl intermediary PD: the video you see is a demo scene you can find at assets/scenes/physics.scene if you wanna try it by yourself!!!
Ships:
I made a custom game engine from scratch! it has a fast opengl pixelart renderer, builtin physics, lighting, an entity-component system, a spatial audio system, terrain system, it can load and save scenes on the fly, supports many 3d asset extensions… Its what i used to create my other big project! (JSP) the engine is cross-platform and works right out of the box for linux, windows and web!! and also it comes with a lightweight level editor and ive also made a website for it Hope you like it!! made with <3 from @aloyak...
|
1792842593.4585273
|
1792928993.4585273
|
|
1030
|
Stock Simulator by @lucasian | Stardance
|
lucasian
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Stock Simulator by @lucasian | Stardance
|
1792788811.086874
|
1793393611.086874
|
|
1031
|
Sound powered machine by @Tripler | Stardance
|
Tripler
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Sound powered machine by @Tripler | Stardan Title: Sound powered machine by @Tripler | Stardance...
|
1792666122.6265385
|
1793270922.6265385
|
|
1032
|
OpenRecode by @xarber | Stardance
|
xarber
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: OpenRecode by @xarber | Stardance
|
1792713093.5155916
|
1793317893.5155916
|
|
1033
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792896537.6848469
|
1793760537.6848469
|
|
1034
|
Untitled by @jam06452 | Stardance
|
jam06452
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @jam06452 | Stardance
|
1792781575.711032
|
1793386375.711032
|
|
1035
|
The Ultimate Calculator by @ZM | Stardance
|
ZM
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: The Ultimate Calculator by @ZM | Stardance
|
1792648418.4295447
|
1793253218.4295447
|
|
1036
|
Beyond the Quarks by @__grdev | Stardance
|
__grdev
|
1
|
31.4
|
410
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-14T13:56:37Z", "hours": 31.0, "multiplier": 13.08, "payout": 410, "blessing": "neutral", "text": "I built this sci-fi-themed video game from scratch. The story is about an astronaut who makes the first interdimensional journey thanks to Q.U.A.R.K., a device created by NASA to generate wormholes. However, the device malfunctions, and the player finds himself lost in the multiverse. The player must explore different universes to find parts to repair the Q.U.A.R.K. and return home. The game is still in its early stages of development. The demo only includes the first playable scene, the lab, but much of the foundation for the rest of the gameplay is already in place. The pixel art assets were almost entirely created from scratch by me. Only a few of the images in the first sequence were generated by AI and then edited and adjusted by hand. While the game may be very short at the moment, I hope the attention to detail stands out, such as the dialogue, sprites, and the logic of certain elements, such as the camera that changes its behavior (first fixed on the screen and then dynamically following the player).", "repo": "https://github.com/gianluca-rainis/BeyondTheQuarks", "demo": "https://var-grdev.itch.io/beyond-the-quarks"}]...
|
[{"post_id": 53050, "ts": "202 [{"post_id": 53050, "ts": "2026-08-23T13:21:48Z", "hours": 0.3958, "text": "Fixed the deselect on background click in all the scenes."}, {"post_id": 46911, "ts": "2026-08-14T13:33:31Z", "hours": 0.3492, "text": "Updated the README and published on itch.io!"}, {"post_id": 46881, "ts": "2026-08-14T12:54:10Z", "hours": 0.8186, "text": "I’ve added a “Coming Soon” scene after the finish of the first scene. I’ve also added an automatic saving system for when it change scene."}, {"post_id": 45135, "ts": "2026-08-11T13:06:26Z", "hours": 1.1853, "text": "Finally finished a working saving system! It saves the position of the player, the inventory, the scene and the current room!"}, {"post_id": 44569, "ts": "2026-08-10T12:38:18Z", "hours": 0.5222, "text": "Made the graphics for the delete items."}, {"post_id": 44017, "ts": "2026-08-09T14:47:42Z", "hours": 1.5428, "text": "Finished the logic and the graphics of the inventory. Added some items in the laboratory that the player can pick up. Created some special dialogues with some NPCs that depends on the items that the player has in the inventory."}, {"post_id": 43303, "ts": "2026-08-08T14:20:32Z", "hours": 1.7525, "text": "Finished a first full-working version of the inventory. (the column in the video is just a test item)"}, {"post_id": 42646, "ts": "2026-08-07T14:12:17Z", "hours": 0.4469, "text": "Finished a first simple version of the pause menu, with inventory, QUARK status, Save and Quit buttons."}, {"post_id": 41301, "ts": "2026-08-05T13:19:18Z", "hours": 1.6572, "text": "Started working on a simple pause menu. Started integrating a better saving system, that should allow the player to save in almost any moment and resume from it."}, {"post_id": 40715, "ts": "2026-08-04T12:58:49Z", "hours": 1.35, "text": "Added images and text for the first dimensional leap sequence."}, {"post_id": 39955, "ts": "2026-08-03T09:10:36Z", "hours": 1.0233, "text": "Finally finished a first version of the tutorial scene. I’ve added the sound effects and prepared everything to start working on the first multiverse."}, {"post_id": 39420, "ts": "2026-08-02T11:29:31Z", "hours": 1.9908, "text": "Added an animation for the moment when you step on the stage, with a speech from the head of the Q.U.A.R.K. project. Added an animation when you take the Q.U.A.R.K. and the animated portal that you can open with it. I drew all the sprites."}, {"post_id": 39351, "ts": "2026-08-02T08:43:14Z", "hours": 0.8733, "text": "Added some really important people in the stage room. Each person have a dialogue, and the NASA Administrator has 4 dialogues."}, {"post_id": 38800, "ts": "2026-08-01T11:17:02Z", "hours": 0.6367, "text": "Added the QUARK, with the pickup animation."}, {"post_id": 38109, "ts": "2026-07-31T10:12:26Z", "hours": 0.9011, "text": "Drawn 2 more sprites for the scientists. Added some electronic components in the engineers room. Added unique dialogues with the NPCs."}, {"post_id": 37534, "ts": "2026-07-30T10:49:14Z", "hours": 1.8297, "text": "Made the dialogs with the NPC!"}, {"post_id": 36978, "ts": "2026-07-29T12:33:12Z", "hours": 0.9403, "text": "Added some scientists in the first room!"}, {"post_id": 36331, "ts": "2026-07-28T11:46:35Z", "hours": 1.3778, "text": "Started working on the sprites for the tutorial rooms!"}, {"post_id": 32956, "ts": "2026-07-22T13:18:32Z", "hours": 1.3172, "text": "Created the backgrounds for the tutorial rooms"}, {"post_id": 24042, "ts": "2026-07-07T10:27:48Z", "hours": 2.4883, "text": "Started working on the rooms. Created three empty rooms (that will be the three rooms of the tutorial), two with static camera, and one (that’s bigger) with the free camera. Made the room transition animation (It’s been quite difficult, I had to fix a lot of bugs!)."}, {"post_id": 22771, "ts": "2026-07-05T11:05:24Z", "hours": 1.2342, "text": "Updated the Unity version to the modern 6000.5.1f1 and fixed all the related bugs. Added a typing sound effect for the story scene (unluckily you can’t hear it in the video)."}, {"post_id": 2644, "ts": "2026-06-05T09:27:33Z", "hours": 1.1653, "text": "Drawn the player sprites! (1st simple version)"}, {"post_id": 1349, "ts": "2026-06-03T09:35:28Z", "hours": 0.8936, "text": "Made the story’s slides for the new games."}, {"post_id": 1323, "ts": "2026-06-03T08:08:39Z", "hours": 0.7725, "text": "Finished the title screen!"}, {"post_id": 802, "ts": "2026-06-02T13:58:42Z", "hours": 0.8736, "text": "Writed the Save logic."}, {"post_id": 730, "ts": "2026-06-02T10:33:57Z", "hours": 0.9222, "text": "Added the buttons in the title screen"}, {"post_id": 689, "ts": "2026-06-02T07:57:05Z", "hours": 2.4847, "text": "Made the README file. Started working on the title scene."}]...
|
Title: Beyond the Quarks by @__grdev | Stardance
Title: Beyond the Quarks by @__grdev | Stardance
Devlogs:
Made the README file. Started working on the title scene.
Added the buttons in the title screen
Writed the Save logic.
Finished the title screen!
Made the story’s slides for the new games.
Drawn the player sprites! (1st simple version)
Updated the Unity version to the modern 6000.5.1f1 and fixed all the related bugs. Added a typing sound effect for the story scene (unluckily you can’t hear it in the video).
Started working on the rooms. Created three empty rooms (that will be the three rooms of the tutorial), two with static camera, and one (that’s bigger) with the free camera. Made the room transition animation (It’s been quite difficult, I had to fix a lot of bugs!).
Created the backgrounds for the tutorial rooms
Started working on the sprites for the tutorial rooms!
Added some scientists in the first room!
Made the dialogs with the NPC!
Drawn 2 more sprites for the scientists. Added some electronic components in the engineers room. Added unique dialogues with the NPCs.
Added the QUARK, with the pickup animation.
Added some really important people in the stage room. Each person have a dialogue, and the NASA Administrator has 4 dialogues.
Added an animation for the moment when you step on the stage, with a speech from the head of the Q.U.A.R.K. project. Added an animation when you take the Q.U.A.R.K. and the animated portal that you can open with it. I drew all the sprites.
Finally finished a first version of the tutorial scene. I’ve added the sound effects and prepared everything to start working on the first multiverse.
Added images and text for the first dimensional leap sequence.
Started working on a simple pause menu. Started integrating a better saving system, that should allow the player to save in almost any moment and resume from it.
Finished a first simple version of the pause menu, with inventory, QUARK status, Save and Quit buttons.
Finished a first full-working version of the inventory. (the column in the video is just a test item)
Finished the logic and the graphics of the inventory. Added some items in the laboratory that the player can pick up. Created some special dialogues with some NPCs that depends on the items that the player has in the inventory.
Made the graphics for the delete items.
Finally finished a working saving system! It saves the position of the player, the inventory, the scene and the current room!
I’ve added a “Coming Soon” scene after the finish of the first scene. I’ve also added an automatic saving system for when it change scene.
Updated the README and published on itch.io!
Fixed the deselect on background click in all the scenes.
Ships:
I built this sci-fi-themed video game from scratch. The story is about an astronaut who makes the first interdimensional journey thanks to Q.U.A.R.K., a device created by NASA to generate wormholes. However, the device malfunctions, and the player finds himself lost in the multiverse. The player must explore different universes to find parts to repair the Q.U.A.R.K. and return home. The game is still in its early stages of development. The demo only includes the first playable scene, the lab, but much of the foundation for the rest of the gameplay is already in place. The pixel art assets were almost entirely created from scratch by me. Only a few of the images in the first sequence were generated by AI and then edited and adjusted by hand. While the game may be very short at the moment, I hope the attention to detail stands out, such as the dialogue, sprites, and the logic of certain elements, such as the camera that changes its behavior (first fixed on the screen and then dynamically following the player)....
|
1792838912.7058046
|
1792925312.7058046
|
|
1037
|
3d can holder by @Microsoft_Bingham | Stardance
|
Microsoft_Bingham
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: 3d can holder by @Microsoft_Bingham | Stard Title: 3d can holder by @Microsoft_Bingham | Stardance...
|
1792587070.4969618
|
1793191870.4969618
|
|
1038
|
πKey by @ZiDi | Stardance
|
ZiDi
|
0
|
15.82
|
0
|
[]
|
[{"post_id": 6328, "ts": "2026 [{"post_id": 6328, "ts": "2026-06-10T17:25:48Z", "hours": 3.8253, "text": "Today I added USB Mode to the Pi_Key project, which allows the device to act as a portable AI configuration and data storage system. With this mode, AI settings and chat histories are stored directly on a USB flash drive, making the system fully portable across Linux, Windows, and macOS. The goal is to keep it simple and plug-and-play, so users can move their setup between machines without any extra setup. At the moment, the implementation is still in an early stage. There is no encryption or access protection, which means anyone with physical access to the USB drive can read all stored data, including API keys and chat histories. Security improvements are planned for future versions, including encryption and better protection for sensitive configuration data. Love u :3"}, {"post_id": 4992, "ts": "2026-06-08T17:14:17Z", "hours": 0.4158, "text": "I made a new design for Pi Key, I’ve already ordered it, and now I just hope it actually works. So what do I want to do next? Since I don’t need to work on the PCB for now, I’m going to focus on the software side. I want to make the app faster and smoother, clean up the code, and give it a more professional look. I also want to improve the GitHub repository so it looks well-structured and serious, not messy. On top of that, I want to build a proper website for the project. And if I finish the software in Python now, my next move is to rewrite the whole thing in Rust to make it faster, cleaner, and more solid. Basically: hardware is done for now — time to level up the software, the codebase, and the whole presentation. Love u :3"}, {"post_id": 4399, "ts": "2026-06-07T18:32:34Z", "hours": 0.7658, "text": "Fixing some bugs, repairing history saving love u :3"}, {"post_id": 3700, "ts": "2026-06-06T19:10:18Z", "hours": 3.2453, "text": "Currently working on an AI-powered chat system for Pi Key. Pi Key is evolving into much more than just an API key manager. The device is designed to securely store API keys, passwords, and chat histories while providing direct access to AI conversations. Current features: • AI Chat • API Key Storage • Password Manager • Chat History Storage Planned features: • Encrypted Data Storage • Local AI Processing • File Management • Secure Notes • Plugin System • Multi-Provider AI Support • Device-to-Device Sync • Custom Automations • Developer Tools • Terminal Access Thanks for support Love u :3"}, {"post_id": 2919, "ts": "2026-06-05T20:29:36Z", "hours": 2.2464, "text": "Working on AI API’s keys saving, connecting to openRouter, and some other things"}, {"post_id": 2312, "ts": "2026-06-04T18:50:02Z", "hours": 2.12, "text": "Some sneak pick from the app I’m working on for communication between PC and pi-key. It will also have support for adding API keys and communicating with AI bots and saving history locally. I’m also working on encrypted password storage and I’m thinking about rewriting all the code from this app and also from the software that runs on pi-key from python to rust."}, {"post_id": 1553, "ts": "2026-06-03T17:20:30Z", "hours": 1.2569, "text": "Testing programs on prototype :)"}, {"post_id": 937, "ts": "2026-06-02T18:15:14Z", "hours": 0.8025, "text": "Working on Simple Web-Site For now its just easy animation and repo button but in future I want to use it for something bigger… Maybe I am gonna buy domain for it"}, {"post_id": 894, "ts": "2026-06-02T16:52:16Z", "hours": 0.3511, "text": "Working on README in my repo"}, {"post_id": 283, "ts": "2026-06-01T14:56:08Z", "hours": 0.4242, "text": "Some 3D rendering :)"}, {"post_id": 236, "ts": "2026-06-01T11:12:17Z", "hours": 0.3639, "text": "Working on PCB :3"}]...
|
Title: πKey by @ZiDi | Stardance
Devlogs:
Working Title: πKey by @ZiDi | Stardance
Devlogs:
Working on PCB :3
Some 3D rendering :)
Working on README in my repo
Working on Simple Web-Site For now its just easy animation and repo button but in future I want to use it for something bigger… Maybe I am gonna buy domain for it
Testing programs on prototype :)
Some sneak pick from the app I’m working on for communication between PC and pi-key. It will also have support for adding API keys and communicating with AI bots and saving history locally. I’m also working on encrypted password storage and I’m thinking about rewriting all the code from this app and also from the software that runs on pi-key from python to rust.
Working on AI API’s keys saving, connecting to openRouter, and some other things
Currently working on an AI-powered chat system for Pi Key. Pi Key is evolving into much more than just an API key manager. The device is designed to securely store API keys, passwords, and chat histories while providing direct access to AI conversations. Current features: • AI Chat • API Key Storage • Password Manager • Chat History Storage Planned features: • Encrypted Data Storage • Local AI Processing • File Management • Secure Notes • Plugin System • Multi-Provider AI Support • Device-to-Device Sync • Custom Automations • Developer Tools • Terminal Access Thanks for support Love u :3
Fixing some bugs, repairing history saving love u :3
I made a new design for Pi Key, I’ve already ordered it, and now I just hope it actually works. So what do I want to do next? Since I don’t need to work on the PCB for now, I’m going to focus on the software side. I want to make the app faster and smoother, clean up the code, and give it a more professional look. I also want to improve the GitHub repository so it looks well-structured and serious, not messy. On top of that, I want to build a proper website for the project. And if I finish the software in Python now, my next move is to rewrite the whole thing in Rust to make it faster, cleaner, and more solid. Basically: hardware is done for now — time to level up the software, the codebase, and the whole presentation. Love u :3
Today I added USB Mode to the Pi_Key project, which allows the device to act as a portable AI configuration and data storage system. With this mode, AI settings and chat histories are stored directly on a USB flash drive, making the system fully portable across Linux, Windows, and macOS. The goal is to keep it simple and plug-and-play, so users can move their setup between machines without any extra setup. At the moment, the implementation is still in an early stage. There is no encryption or access protection, which means anyone with physical access to the USB drive can read all stored data, including API keys and chat histories. Security improvements are planned for future versions, including encryption and better protection for sensitive configuration data. Love u :3...
|
1792478905.7825334
|
1793083705.7825334
|
|
1039
|
Animatronics Archive by @Ur_Local_R3N | Stardance
|
Ur_Local_R3N
|
0
|
0.95
|
0
|
[]
|
[{"post_id": 32726, "ts": "202 [{"post_id": 32726, "ts": "2026-07-22T01:51:20Z", "hours": 0.9508, "text": "Been working on this site for about 1.5 years, is going to be an info dump about animatronics, mainly animatronic restaurants, and how to make them. It’s been a long WIP, as when I first started I was learning HTML while working on it so I’ve had to re-start several times due to amateur mistakes. Stay tuned for this mess lol."}]...
|
Title: Animatronics Archive by @Ur_Local_R3N | Sta Title: Animatronics Archive by @Ur_Local_R3N | Stardance
Devlogs:
Been working on this site for about 1.5 years, is going to be an info dump about animatronics, mainly animatronic restaurants, and how to make them. It’s been a long WIP, as when I first started I was learning HTML while working on it so I’ve had to re-start several times due to amateur mistakes. Stay tuned for this mess lol....
|
1792705997.0441976
|
1793310797.0441976
|
|
1040
|
small overtures by @luftacen | Stardance
|
luftacen
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: small overtures by @luftacen | Stardance
|
1792633674.2686536
|
1793238474.2686536
|
|
1041
|
My first slack bot! by @Bri | Stardance
|
Bri
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @Bri | Stardance
|
1792666203.30291
|
1793271003.30291
|
|
1042
|
The one by @riya | Stardance
|
riya
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: The one by @riya | Stardance
|
1792590752.4733896
|
1793195552.4733896
|
|
1043
|
Untitled project by @shaurya | Stardance
|
shaurya
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @shaurya | Stardance
|
1792633942.1338084
|
1793238742.1338084
|
|
1044
|
My awesome macropad! by @rae | Stardance
|
rae
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @rae | Stardance
|
1792795769.3790262
|
1793400569.3790262
|
|
1045
|
My awesome macropad! by @MacktheSilly | Stardance
|
MacktheSilly
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @MacktheSilly | Sta Title: My awesome macropad! by @MacktheSilly | Stardance...
|
1792669889.9997706
|
1793274689.9997706
|
|
1046
|
My awesome macropad! by @V | Stardance
|
V
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @V | Stardance
|
1792918261.1914008
|
1793782261.1914008
|
|
1047
|
My awesome macropad! by @Shiven | Stardance
|
Shiven
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Shiven | Stardance
|
1792947000.1208053
|
1793811000.1208053
|
|
1048
|
YaoiBot by @libewa | Stardance
|
libewa
|
2
|
6.0
|
17
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-29T10:15:34Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I upgraded the bot in many ways. The NixOS service is now security-hardened, no longer runs as root, and uses best-practice methods to keep the access token secret. I also added configuration options, so that you can run the bot with different search queries without modifying the source code yourself.", "repo": "https://codeberg.org/libewa/yaoibot", "demo": "https://mastodon.social/@yaoibot"}, {"ship_num": 2, "ts": "2026-06-01T20:47:38Z", "hours": 3.0, "multiplier": 6.42, "payout": 17, "blessing": "neutral", "text": "I made a Mastodon bot that posts Yaoi art every hour. I used Deno to build it, and learned how to use the megalodon NPM package. I first tried to run the bot using the cronjobs feature on Deno Deploy, but that did not work for some reason, so I decided to deploy it on Nest instead. Thus, I also learned how to configure NixOS on Proxmox (and I didn’t even get Hackatime credits for this), how to write NixOS modules, and how to package Deno applications for NixOS (you don’t). This was supposed to be a quick entry/starter project for Stardance, and I finished it in a single day (even though I was supposed to be doing other things, for school 🫣).", "repo": "https://codeberg.org/libewa/yaoibot", "demo": "https://mastodon.social/@yaoibot"}]...
|
[{"post_id": 57226, "ts": "202 [{"post_id": 57226, "ts": "2026-08-29T10:12:50Z", "hours": 1.9381, "text": "Many things can now be configured from the NixOS module, including the search query and rating filter. There is also documentation now!"}, {"post_id": 8223, "ts": "2026-06-13T17:54:52Z", "hours": 0.8958, "text": "Over some time, I made a few improvements. The service now no longer runs as root, but as a dynamic user, which allocates a UID and GID at random. I had a few issues in the meantime, because this also automatically enables a lot of hardening functionality, preventing Deno from downloading its dependencies. I overrode the DENO_DIR environment variable and had systemd create a cache directory, and now it works. Also, the access token is now no longer provided as a string, but inside an encrypted .env file. The dotenv file, however, is not loaded by Deno, but by systemd, which then passes it to the Deno process as usual. Thanks to @jak2k for a lot of pointers to these systemd features!"}, {"post_id": 406, "ts": "2026-06-01T20:08:37Z", "hours": 2.1683, "text": "It turns out the library hiccups when using a RAM buffer. I now save the files to /tmp, and create a ReadStream, and now it works! The rest of the time was spent writing a Nix flake, which both wraps the package (currently using a shell script, until I figure out how to run deno compile in the offline sandbox), and contains a NixOS module, which creates a systemd timer to run the bot as a oneshot service."}, {"post_id": 245, "ts": "2026-06-01T12:34:11Z", "hours": 0.5083, "text": "I wrote code that should work™. But for some reason, I get an HTTP error 400, and the stacktrace is of no use, since it is somewhere within the event loop. Also, some time is missing from Hackatime, since it only tracks git repositories."}]...
|
Title: YaoiBot by @libewa | Stardance
Devlogs:
I Title: YaoiBot by @libewa | Stardance
Devlogs:
I wrote code that should work™. But for some reason, I get an HTTP error 400, and the stacktrace is of no use, since it is somewhere within the event loop. Also, some time is missing from Hackatime, since it only tracks git repositories.
It turns out the library hiccups when using a RAM buffer. I now save the files to /tmp, and create a ReadStream, and now it works! The rest of the time was spent writing a Nix flake, which both wraps the package (currently using a shell script, until I figure out how to run deno compile in the offline sandbox), and contains a NixOS module, which creates a systemd timer to run the bot as a oneshot service.
Over some time, I made a few improvements. The service now no longer runs as root, but as a dynamic user, which allocates a UID and GID at random. I had a few issues in the meantime, because this also automatically enables a lot of hardening functionality, preventing Deno from downloading its dependencies. I overrode the DENO_DIR environment variable and had systemd create a cache directory, and now it works. Also, the access token is now no longer provided as a string, but inside an encrypted .env file. The dotenv file, however, is not loaded by Deno, but by systemd, which then passes it to the Deno process as usual. Thanks to @jak2k for a lot of pointers to these systemd features!
Many things can now be configured from the NixOS module, including the search query and rating filter. There is also documentation now!
Ships:
I made a Mastodon bot that posts Yaoi art every hour. I used Deno to build it, and learned how to use the megalodon NPM package. I first tried to run the bot using the cronjobs feature on Deno Deploy, but that did not work for some reason, so I decided to deploy it on Nest instead. Thus, I also learned how to configure NixOS on Proxmox (and I didn’t even get Hackatime credits for this), how to write NixOS modules, and how to package Deno applications for NixOS (you don’t). This was supposed to be a quick entry/starter project for Stardance, and I finished it in a single day (even though I was supposed to be doing other things, for school 🫣).
I upgraded the bot in many ways. The NixOS service is now security-hardened, no longer runs as root, and uses best-practice methods to keep the access token secret. I also added configuration options, so that you can run the bot with different search queries without modifying the source code yourself....
|
1792842965.4495099
|
1792929365.4495099
|
|
1049
|
Hexapod-HomeAssistent by @thebiker_cat | Stardance
|
thebiker_cat
|
0
|
20.89
|
0
|
[]
|
[{"post_id": 12825, "ts": "202 [{"post_id": 12825, "ts": "2026-06-21T00:11:33Z", "hours": 8.0814, "text": "Completed Goals I have reached a few goals and managed to complete a few challenges that I was afraid of. There are actually two important steps I have completed. Build Update First, I managed to finish the raw Hexapod build (a few electronic parts are still missing, but I mean the body). Code Improvements Secondly, I made a few improvements to control a Hexapod leg with coordinates (we also had a problem with our C++ header files that my friend has, thank goodness, solved). So now we are really able to control a real leg with coordinates. Movement Test Another big feature where I laid my focus was a first movement test. I already implemented this feature. I tried to program the tripod gait. I hope that it’ll work, because I wasn’t able to test it until now like I mentioned above, I hadn’t had the time to include some electronic parts in the Hexapod build. What’s Next? I suppose my next big step will be to actually get the robot to walk, so that my friend can finish his important tests and start to implement other movement features, because he is already really hyped for that. We’ll maybe also start with some kind of a control system, but I think that this will take us a little more time and it will be a while yet before we actually get started with that."}, {"post_id": 10235, "ts": "2026-06-16T21:18:35Z", "hours": 8.32, "text": "Progress Since my last devlog, I’ve made great progress. I’ve been looking into inverse kinematics quite a bit and I was pretty successful. I managed to derive formulas for my calculations with a few drawings. I also started to build my robot. Actually, I’ve managed to build up one leg. The leg consists of three joints, each controlled by a servo motor. Implementation Furthermore, my last step was to put my equations into code, so I wrote a test program. Now I am able to convert the angles into coordinates and I can move the leg with coordinates wherever I want. Challenges The biggest challenge so far has been getting the math right for the inverse kinematics, but once I drew the leg and did my calculations on paper, everything came together pretty quickly. What’s next? My next actions would be to make some movement tests. I will try to make a first walking test and see how stable the leg performs. After that, the plan is to build the remaining legs and work on coordinating them together."}, {"post_id": 6733, "ts": "2026-06-11T08:32:11Z", "hours": 4.4881, "text": "I started the Hexapod project by creating a project file structure and tried to implement the first functions for a leg of the Hexapod. It’s a bit difficult right now, because I am still waiting for my project hardware to arrive. So because I couldn’t really start to build the robot, and it was also difficult to start programming it, I started with a few servo tests with buttons and a potentiometer so that I would at least do something to better understand how servo engines work. My next step (when my hardware has arrived) would be to build the robot or at least a leg and try to figure out the kinematics and movement of it and implement it."}]...
|
Title: Hexapod-HomeAssistent by @thebiker_cat | St Title: Hexapod-HomeAssistent by @thebiker_cat | Stardance
Devlogs:
I started the Hexapod project by creating a project file structure and tried to implement the first functions for a leg of the Hexapod. It’s a bit difficult right now, because I am still waiting for my project hardware to arrive. So because I couldn’t really start to build the robot, and it was also difficult to start programming it, I started with a few servo tests with buttons and a potentiometer so that I would at least do something to better understand how servo engines work. My next step (when my hardware has arrived) would be to build the robot or at least a leg and try to figure out the kinematics and movement of it and implement it.
Progress Since my last devlog, I’ve made great progress. I’ve been looking into inverse kinematics quite a bit and I was pretty successful. I managed to derive formulas for my calculations with a few drawings. I also started to build my robot. Actually, I’ve managed to build up one leg. The leg consists of three joints, each controlled by a servo motor. Implementation Furthermore, my last step was to put my equations into code, so I wrote a test program. Now I am able to convert the angles into coordinates and I can move the leg with coordinates wherever I want. Challenges The biggest challenge so far has been getting the math right for the inverse kinematics, but once I drew the leg and did my calculations on paper, everything came together pretty quickly. What’s next? My next actions would be to make some movement tests. I will try to make a first walking test and see how stable the leg performs. After that, the plan is to build the remaining legs and work on coordinating them together.
Completed Goals I have reached a few goals and managed to complete a few challenges that I was afraid of. There are actually two important steps I have completed. Build Update First, I managed to finish the raw Hexapod build (a few electronic parts are still missing, but I mean the body). Code Improvements Secondly, I made a few improvements to control a Hexapod leg with coordinates (we also had a problem with our C++ header files that my friend has, thank goodness, solved). So now we are really able to control a real leg with coordinates. Movement Test Another big feature where I laid my focus was a first movement test. I already implemented this feature. I tried to program the tripod gait. I hope that it’ll work, because I wasn’t able to test it until now like I mentioned above, I hadn’t had the time to include some electronic parts in the Hexapod build. What’s Next? I suppose my next big step will be to actually get the robot to walk, so that my friend can finish his important tests and start to implement other movement features, because he is already really hyped for that. We’ll maybe also start with some kind of a control system, but I think that this will take us a little more time and it will be a while yet before we actually get started with that....
|
1792795967.97154
|
1793400767.97154
|
|
1050
|
My first slack bot! by @rae | Stardance
|
rae
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @rae | Stardance
|
1792604919.9811902
|
1793209719.9811902
|