|
27768
|
magnetic music player with disks by @hashem | Star magnetic music player with disks by @hashem | Stardance...
|
hashem
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: magnetic music player with disks by @hashem Title: magnetic music player with disks by @hashem | Stardance...
|
1793202621.3922877
|
1793807421.3922877
|
|
45290
|
magnetic-keeb by @forkosssa | Stardance
|
forkosssa
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: magnetic-keeb by @forkosssa | Stardance
|
1793324946.3425515
|
1793929746.3425515
|
|
71616
|
maharshis.tech by @mahersheys | Stardance
|
mahersheys
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: maharshis.tech by @mahersheys | Stardance
|
1793119633.7884219
|
1793724433.7884219
|
|
67454
|
mahdi by @mahdimuayad2013 | Stardance
|
mahdimuayad2013
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mahdi by @mahdimuayad2013 | Stardance
|
1793109268.5812874
|
1793714068.5812874
|
|
54934
|
mahoraga by @ansh_devansh | Stardance
|
ansh_devansh
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mahoraga by @ansh_devansh | Stardance
|
1793029629.1931498
|
1793634429.1931498
|
|
43157
|
mai website by @duoggy9 | Stardance
|
duoggy9
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mai website by @duoggy9 | Stardance
|
1793206420.0232675
|
1793811220.0232675
|
|
8254
|
mail-box by @christian | Stardance
|
christian
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mail-box by @christian | Stardance
|
1793494463.6988618
|
1794099263.6988618
|
|
57156
|
mail.swrg by @swargaraj | Stardance
|
swargaraj
|
1
|
21.0
|
361
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-07T12:49:16Z", "hours": 21.0, "multiplier": 17.54, "payout": 361, "blessing": "neutral", "text": "mail.swrg · a fast, minimal, disposable inbox Every sketchy site wants your email before showing you anything. That used to mean either handing over your real inbox to the spam pipeline or juggling slow, ad-infested temp-mail sites with clutter everywhere. I built mail.swrg: a fast, minimal disposable email service. What it does: One click → instant random address like [email protected] Incoming mail shows up automatically Clean inbox UI: dark, distraction-free, zero ads, zero trackers Keep / reuse your address across sessions with one-click export & import (save the session file, load it anywhere later) Wipe — delete the entire mailbox anytime, nothing lingers Everything runs on Cloudflare edge: Workers, D1, Email Routing Why I’m being honest about “fast”: mail takes about ~10 seconds to appear. Most mail clients hold outgoing messages in a queue for ~5s before actually sending them, and the inbox refreshes every ~5s after that. So if you test it and nothing shows instantly, give it a second. It’s on them, not us.", "repo": "https://gitlab.com/swrg/mail", "demo": "https://mail.swrg.dev"}]...
|
[{"post_id": 63515, "ts": "202 [{"post_id": 63515, "ts": "2026-09-07T12:45:06Z", "hours": 2.6211, "text": "#7 - it’s done the inbox now says “Pulling Emails” until the first fetch is done. way less confusing. added a small note in the footer that mail takes ~10s to show up bc most mail clients hold ur email in a queue for 5s before sending. and i spent way too long on scrollbar-gutter not working in chrome. works in firefox. anyway the project is actually finished now. it opens fast, it doesn’t freeze, and im not touching it anymore. thanks for reading i guess, this is the last one. gg"}, {"post_id": 62917, "ts": "2026-09-06T13:40:14Z", "hours": 1.3333, "text": "6th - Another cleanup session. moved message fetching to tanstack query so i could delete like 50 lines of manual polling code. fixed the notification sound not playing (browser autoplay policy is annoying). fixed delete mailbox clearing localStorage even when the server request fails. added error handling in a bunch of places where it was missing. removed dead code. tanstack query is really nice once you set it up but the default behavior around networkMode: \"online\" and staleTime can bite you. the query just silently skips if youre offline which is confusing thats it"}, {"post_id": 62760, "ts": "2026-09-06T08:52:08Z", "hours": 1.2008, "text": "#5 - Did a lot of cleanup. first thing, the refresh system was kinda broken? so i had to refactor the whole countdown logic in use-refresh.tsx to use a ref flag instead. also figured out that messages were being fetched TWICE. like useMessages had its own refetchInterval: 5000 AND useRefresh was doing the same thing with its own interval. so now useRefresh is the single source of truth for polling and i removed the redundant one from useMessages. also cleaned up a bunch of stuff that was just… messy: extracted validateSession, exportSession, and STORAGE_KEY to lib/utils.ts because they were duplicated across files the delete button had no confirmation dialog, now it has useCopyToClipboard had a timeout leak where if you copied twice fast the old timeout would still fire. fixed that with a ref the delete handler now reloads the page after success so it auto-creates a new mailbox also the countdown was ticking even when there was no session (like after deleting) which made no sense so now it checks if a session exists before counting down anyway thats pretty much it. next up i actually need to get the inbox working"}, {"post_id": 62733, "ts": "2026-09-06T07:23:56Z", "hours": 2.0186, "text": "#4 - To add a way to export and import mail sessions, i added two buttons in the header. one for export, one for import. export was pretty simple. to import, we read the file, parse the JSON, and then validate it. validateSession function checks if the object has address and key and that theyre both non-empty strings. now i wanted two different states: if the file is valid -> show a warning “this will overwrite your current session, u sure?” if the file is invalid -> just show an error with the Alert component used AlertDialog from cossui for both. the valid one has a Cancel and Continue button, and the invalid one just shows the error in a red Alert and an OK button to close also had to make sure the dialog state is controlled with open and onOpenChange because otherwise it wouldnt close properly after importing. next up i wanna work on the inbox and make it actually look good when theres no emails"}, {"post_id": 62672, "ts": "2026-09-06T04:49:19Z", "hours": 2.3631, "text": "#3 - Now i needed rate limiting because without it anyone could just spam the API and create like a million mailboxes which would be really bad. so i started looking into how to do this with cloudflare workers because thats what im using and they have this fancy Rate Limiting Binding that looked really clean. you just add some config to wrangler.toml, add the binding to your code, and boom - rate limiting. so i added the bindings, deployed, tested… and nothing. like the binding was there, wrangler showed it in the deploy output, i could even see it in the cloudflare dashboard. but when i actually hit the API with like 8 requests in a row, every single one went through. no 429s, nothing. i spent way too long on this. i was reading the docs, checking if my plan supported it, checking if the binding was actually being called, trying different keys… nothing worked. the binding just silently does nothing. like it deploys fine but then just… doesnt do anything? i dont even know whats wrong at this point. so after giving up on the official way, i just went with D1. yeah the database. im literally storing rate limit counters in a sql table which is… not great for performance obviously because now every single request has to do a database query just to check if youre rate limited. but hey at least it actually works. so right now every POST to /mailboxes does a SELECT on the rate_limits table, checks the count, either increments it or creates a new row, and THEN does the actual mailbox creation. so youre looking at like 2 extra database queries per request just for rate limiting. its not ideal but its what i got. hopefully i figure out the cloudflare one someday because this is genuinely a worse solution in every way except that it works. but for now it prevents abuse so whatever. anyway thats where im at. rate limiting works but its slow."}, {"post_id": 62214, "ts": "2026-09-05T14:03:57Z", "hours": 1.7353, "text": "#2 - For the ui i went with shadcn but not the default one, im using the coss ui variant which has nicer colors and the components feel more polished. the buttons and inputs have this subtle shadow thing that looks clean in dark mode. for state management im keeping it simple, just storing the address and recovery key in localStorage. on first load if theres nothing in storage it auto creates a mailbox. the key is needed for every request so without it you cant read any messages. when you delete the mailbox it clears storage and resets everything. right now the ui has a header with refresh and delete buttons, an input group showing the address with a copy button. gonna add the inbox next…"}, {"post_id": 62128, "ts": "2026-09-05T11:47:07Z", "hours": 9.3033, "text": "#1 - Had a domain lying around, so I thought, why not put it to some use? so basically i wanted a temp mail service. nothing crazy, just something that works fast and especially no ads . been sitting on the idea for a while and finally started it this week. first 2 days were basically me fighting cloudflare email routing. had no idea how workers could intercept emails before this. like the concept is simple but actually getting it to work took way longer than i expected. the worker handles everything now. creating mailboxes, storing incoming emails, serving them through the api. used hono for routing which is surprisingly nice for workers. postal-mime for parsing the raw email content. d1 for the database. pretty straightforward stack honestly. Still need to build the frontend properly but the backend is solid."}]...
|
Title: mail.swrg by @swargaraj | Stardance
Devlog Title: mail.swrg by @swargaraj | Stardance
Devlogs:
#1 - Had a domain lying around, so I thought, why not put it to some use? so basically i wanted a temp mail service. nothing crazy, just something that works fast and especially no ads . been sitting on the idea for a while and finally started it this week. first 2 days were basically me fighting cloudflare email routing. had no idea how workers could intercept emails before this. like the concept is simple but actually getting it to work took way longer than i expected. the worker handles everything now. creating mailboxes, storing incoming emails, serving them through the api. used hono for routing which is surprisingly nice for workers. postal-mime for parsing the raw email content. d1 for the database. pretty straightforward stack honestly. Still need to build the frontend properly but the backend is solid.
#2 - For the ui i went with shadcn but not the default one, im using the coss ui variant which has nicer colors and the components feel more polished. the buttons and inputs have this subtle shadow thing that looks clean in dark mode. for state management im keeping it simple, just storing the address and recovery key in localStorage. on first load if theres nothing in storage it auto creates a mailbox. the key is needed for every request so without it you cant read any messages. when you delete the mailbox it clears storage and resets everything. right now the ui has a header with refresh and delete buttons, an input group showing the address with a copy button. gonna add the inbox next…
#3 - Now i needed rate limiting because without it anyone could just spam the API and create like a million mailboxes which would be really bad. so i started looking into how to do this with cloudflare workers because thats what im using and they have this fancy Rate Limiting Binding that looked really clean. you just add some config to wrangler.toml, add the binding to your code, and boom - rate limiting. so i added the bindings, deployed, tested… and nothing. like the binding was there, wrangler showed it in the deploy output, i could even see it in the cloudflare dashboard. but when i actually hit the API with like 8 requests in a row, every single one went through. no 429s, nothing. i spent way too long on this. i was reading the docs, checking if my plan supported it, checking if the binding was actually being called, trying different keys… nothing worked. the binding just silently does nothing. like it deploys fine but then just… doesnt do anything? i dont even know whats wrong at this point. so after giving up on the official way, i just went with D1. yeah the database. im literally storing rate limit counters in a sql table which is… not great for performance obviously because now every single request has to do a database query just to check if youre rate limited. but hey at least it actually works. so right now every POST to /mailboxes does a SELECT on the rate_limits table, checks the count, either increments it or creates a new row, and THEN does the actual mailbox creation. so youre looking at like 2 extra database queries per request just for rate limiting. its not ideal but its what i got. hopefully i figure out the cloudflare one someday because this is genuinely a worse solution in every way except that it works. but for now it prevents abuse so whatever. anyway thats where im at. rate limiting works but its slow.
#4 - To add a way to export and import mail sessions, i added two buttons in the header. one for export, one for import. export was pretty simple. to import, we read the file, parse the JSON, and then validate it. validateSession function checks if the object has address and key and that theyre both non-empty strings. now i wanted two different states: if the file is valid -> show a warning “this will overwrite your current session, u sure?” if the file is invalid -> just show an error with the Alert component used AlertDialog from cossui for both. the valid one has a Cancel and Continue button, and the invalid one just shows the error in a red Alert and an OK button to close also had to make sure the dialog state is controlled with open and onOpenChange because otherwise it wouldnt close properly after importing. next up i wanna work on the inbox and make it actually look good when theres no emails
#5 - Did a lot of cleanup. first thing, the refresh system was kinda broken? so i had to refactor the whole countdown logic in use-refresh.tsx to use a ref flag instead. also figured out that messages were being fetched TWICE. like useMessages had its own refetchInterval: 5000 AND useRefresh was doing the same thing with its own interval. so now useRefresh is the single source of truth for polling and i removed the redundant one from useMessages. also cleaned up a bunch of stuff that was just… messy: extracted validateSession, exportSession, and STORAGE_KEY to lib/utils.ts because they were duplicated across files the delete button had no confirmation dialog, now it has useCopyToClipboard had a timeout leak where if you copied twice fast the old timeout would still fire. fixed that with a ref the delete handler now reloads the page after success so it auto-creates a new mailbox also the countdown was ticking even when there was no session (like after deleting) which made no sense so now it checks if a session exists before counting down anyway thats pretty much it. next up i actually need to get the inbox working
6th - Another cleanup session. moved message fetching to tanstack query so i could delete like 50 lines of manual polling code. fixed the notification sound not playing (browser autoplay policy is annoying). fixed delete mailbox clearing localStorage even when the server request fails. added error handling in a bunch of places where it was missing. removed dead code. tanstack query is really nice once you set it up but the default behavior around networkMode: "online" and staleTime can bite you. the query just silently skips if youre offline which is confusing thats it
#7 - it’s done the inbox now says “Pulling Emails” until the first fetch is done. way less confusing. added a small note in the footer that mail takes ~10s to show up bc most mail clients hold ur email in a queue for 5s before sending. and i spent way too long on scrollbar-gutter not working in chrome. works in firefox. anyway the project is actually finished now. it opens fast, it doesn’t freeze, and im not touching it anymore. thanks for reading i guess, this is the last one. gg
Ships:
mail.swrg · a fast, minimal, disposable inbox Every sketchy site wants your email before showing you anything. That used to mean either handing over your real inbox to the spam pipeline or juggling slow, ad-infested temp-mail sites with clutter everywhere. I built mail.swrg: a fast, minimal disposable email service. What it does: One click → instant random address like [email protected] Incoming mail shows up automatically Clean inbox UI: dark, distraction-free, zero ads, zero trackers Keep / reuse your address across sessions with one-click export & import (save the session file, load it anywhere later) Wipe — delete the entire mailbox anytime, nothing lingers Everything runs on Cloudflare edge: Workers, D1, Email Routing Why I’m being honest about “fast”: mail takes about ~10 seconds to appear. Most mail clients hold outgoing messages in a queue for ~5s before actually sending them, and the inbox refreshes every ~5s after that. So if you test it and nothing shows instantly, give it a second. It’s on them, not us....
|
1792878430.8921032
|
1793742430.8921032
|
|
247
|
mailman by @afonso | Stardance
|
afonso
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mailman by @afonso | Stardance
|
1793375423.962537
|
1793980223.962537
|
|
51248
|
majic keyboard by @husainqutab65 | Stardance
|
husainqutab65
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: majic keyboard by @husainqutab65 | Stardanc Title: majic keyboard by @husainqutab65 | Stardance...
|
1793382666.2706847
|
1793987466.2706847
|
|
31886
|
make a easy game by @SotirisDiplaros | Stardance
|
SotirisDiplaros
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: make a easy game by @SotirisDiplaros | Star Title: make a easy game by @SotirisDiplaros | Stardance...
|
1793450975.9260564
|
1794055775.9260564
|
|
59910
|
make a games and apps and weps by @masterjordan | make a games and apps and weps by @masterjordan | Stardance...
|
masterjordan
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: make a games and apps and weps by @masterjo Title: make a games and apps and weps by @masterjordan | Stardance...
|
1793029973.9215941
|
1793634773.9215941
|
|
30928
|
make a slack bot by @davids | Stardance
|
davids
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: make a slack bot by @davids | Stardance
|
1793181061.6911738
|
1793785861.6911738
|
|
58189
|
make a toy by @mohanroy | Stardance
|
mohanroy
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: make a toy by @mohanroy | Stardance
|
1793476652.0908718
|
1794081452.0908718
|
|
66756
|
make ur life easy by @ffayzieva300 | Stardance
|
ffayzieva300
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: make ur life easy by @ffayzieva300 | Starda Title: make ur life easy by @ffayzieva300 | Stardance...
|
1793101946.2860222
|
1793706746.2860222
|
|
39592
|
make website by @VidushaNisal | Stardance
|
VidushaNisal
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: make website by @VidushaNisal | Stardance
|
1793166445.9702632
|
1793771245.9702632
|
|
55260
|
making a personal tech blog by @sophel | Stardance
|
sophel
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: making a personal tech blog by @sophel | St Title: making a personal tech blog by @sophel | Stardance...
|
1793155817.6490042
|
1793760617.6490042
|
|
64413
|
making an easy thread k10 mulri color by @jorispes making an easy thread k10 mulri color by @jorispeschke | Stardance...
|
jorispeschke
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: making an easy thread k10 mulri color by @j Title: making an easy thread k10 mulri color by @jorispeschke | Stardance...
|
1793062452.267583
|
1793667252.267583
|
|
39961
|
making doom with logic gates by @NoOneExisting | S making doom with logic gates by @NoOneExisting | Stardance...
|
NoOneExisting
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: making doom with logic gates by @NoOneExist Title: making doom with logic gates by @NoOneExisting | Stardance...
|
1793389798.7575712
|
1793994598.7575712
|
|
44063
|
making semi functional web shooters by @Inity_C_se making semi functional web shooters by @Inity_C_see | Stardance...
|
Inity_C_see
|
0
|
2.58
|
0
|
[]
|
[{"post_id": 53488, "ts": "202 [{"post_id": 53488, "ts": "2026-08-24T01:44:35Z", "hours": 0.8969, "text": "mock idea for web shooters"}, {"post_id": 43640, "ts": "2026-08-09T00:48:52Z", "hours": 0.6667, "text": "Figuring out how to turn off the circuit #1"}, {"post_id": 42372, "ts": "2026-08-07T01:52:09Z", "hours": 0.4314, "text": "Concept #1 - electromagnetism"}, {"post_id": 42358, "ts": "2026-08-07T01:13:51Z", "hours": 0.5808, "text": "‘web’ shooters first board"}]...
|
Title: making semi functional web shooters by @Ini Title: making semi functional web shooters by @Inity_C_see | Stardance
Devlogs:
‘web’ shooters first board
Concept #1 - electromagnetism
Figuring out how to turn off the circuit #1
mock idea for web shooters...
|
1793253244.1445494
|
1793858044.1445494
|
|
52665
|
makos1 by @jamalzakariya2021 | Stardance
|
jamalzakariya2021
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: makos1 by @jamalzakariya2021 | Stardance
|
1793451091.565518
|
1794055891.565518
|
|
22658
|
malini's recipe by @malink | Stardance
|
malink
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: malini's recipe by @malink | Stardance
|
1793210084.9343832
|
1793814884.9343832
|
|
42035
|
mallory's art site by @mallory22 | Stardance
|
mallory22
|
1
|
7.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-14T04:19:50Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Hey! I made a personal website to host my artwork portfolio and commisions. I am proud of how the layout turned out and the sound effects because I don’t have as much experience in these areas! It was difficult to get the cat click mechanic working correctly and make sure the layout didnt completely break on mobile, but i pushed through. I then went through the whole process of getting and connecting my code to a domain, and finally, here we are! I hope you like it :D", "repo": "https://github.com/mallory22/Twenty-Two-Art", "demo": "https://mallory22.com/"}]...
|
[{"post_id": 46694, "ts": "202 [{"post_id": 46694, "ts": "2026-08-14T04:11:01Z", "hours": 5.0942, "text": "Art site update!! Site is pretty much finished, i created all the pages and even connected it to a domain! Ive had a lot of fun creating this, I implemented some cool feautures like how the cat meows when you click it and there are various sound effects + a light and dark mode. It cuurrently includes a home page, portfolio page, commisions page, and an about me page :)"}, {"post_id": 43677, "ts": "2026-08-09T02:32:11Z", "hours": 2.2622, "text": "Progress for my art site! I have been making a website without much experience to host my art portfolio and commisions. So far, I have created the whole design layout and started building. I have set up some simple styling, layout, etc.!"}]...
|
Title: mallory's art site by @mallory22 | Star Title: mallory's art site by @mallory22 | Stardance
Devlogs:
Progress for my art site! I have been making a website without much experience to host my art portfolio and commisions. So far, I have created the whole design layout and started building. I have set up some simple styling, layout, etc.!
Art site update!! Site is pretty much finished, i created all the pages and even connected it to a domain! Ive had a lot of fun creating this, I implemented some cool feautures like how the cat meows when you click it and there are various sound effects + a light and dark mode. It cuurrently includes a home page, portfolio page, commisions page, and an about me page :)
Ships:
Hey! I made a personal website to host my artwork portfolio and commisions. I am proud of how the layout turned out and the sound effects because I don’t have as much experience in these areas! It was difficult to get the cat click mechanic working correctly and make sure the layout didnt completely break on mobile, but i pushed through. I then went through the whole process of getting and connecting my code to a domain, and finally, here we are! I hope you like it :D...
|
1793598884.8721595
|
1793685284.8721595
|
|
70688
|
mama bt7miny by @abdobasem | Stardance
|
abdobasem
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mama bt7miny by @abdobasem | Stardance
|
1793195366.1008224
|
1793800166.1008224
|
|
62188
|
mama mario by @aaryvardhans | Stardance
|
aaryvardhans
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mama mario by @aaryvardhans | Stardance
|
1793044260.994755
|
1793649060.994755
|
|
43339
|
mama-bot by @arthihalder | Stardance
|
arthihalder
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T07:18:30Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Mama Bot is a slack bot that runs and replies in my native language Bangla! it is made to be used in our bangladeshi peoples channel! it is online 24/7 through Nest. The commands: /mama-help to show all the available commands /mama-koi to ping the bot in a channel /mama-biral to tell a random fact about cats (i kept it while trying out the tutorial) /mama-jokebolo to tell a random joke from the json in Bangla /mama-telljoke to tell a random joke in english (i also kept this from the tutorial) /mama-vallagena to tell a random quote when you are bored /mama-tosskoro to flip a coin /mama-ajkekoitarik to fetch the current date Ai usage : i used gpt to format the json as it would have taken me too long to format it. and it also helped me through SSH in to the Nest Server. Challenges? it is my first time SSH ing into a server ! i found it cool! and probably finidng content for the json for my bot was hard.", "repo": "https://github.com/bsastudio601/mama-slack-bot", "demo": "https://hackclub.enterprise.slack.com/archives/C0P5NE354"}]...
|
[{"post_id": 41180, "ts": "202 [{"post_id": 41180, "ts": "2026-08-05T07:05:19Z", "hours": 0.6925, "text": "MAMA BOT LAST POST BEFORE SHIPPING! so i wrote some lame jokes with the help of gpt as place holder for now and finiding more original jokes from insta reels and stuff i will keep updating the jsons!"}, {"post_id": 40828, "ts": "2026-08-04T16:25:15Z", "hours": 1.5825, "text": "MAMA BOT! Mama bot is a slack app that works with slash commands and outputs replied in my native language Bangla! The bot is made for our #bangladesh channel to bring some fun by telling random jokes in our native language and say some random quotes in our native language. commands : /mama-koi to ping /mama-jokebolo to tell joke in bangla /mama-telljoke to tell joke in bangla /mama-vallagena to tell random quote /mama-tosskoro to clip a coin! /mama-ajkekoitarik to show the current date /mama-biral to tell random facts about cats /mama-help to show the available command i a .json file for the bangla jokes and quote and added function such as coin flip, date fetch as a quick learning opportunity. the catfacts and english joke are the code from the guide!"}]...
|
Title: mama-bot by @arthihalder | Stardance
Devlo Title: mama-bot by @arthihalder | Stardance
Devlogs:
MAMA BOT! Mama bot is a slack app that works with slash commands and outputs replied in my native language Bangla! The bot is made for our #bangladesh channel to bring some fun by telling random jokes in our native language and say some random quotes in our native language. commands : /mama-koi to ping /mama-jokebolo to tell joke in bangla /mama-telljoke to tell joke in bangla /mama-vallagena to tell random quote /mama-tosskoro to clip a coin! /mama-ajkekoitarik to show the current date /mama-biral to tell random facts about cats /mama-help to show the available command i a .json file for the bangla jokes and quote and added function such as coin flip, date fetch as a quick learning opportunity. the catfacts and english joke are the code from the guide!
MAMA BOT LAST POST BEFORE SHIPPING! so i wrote some lame jokes with the help of gpt as place holder for now and finiding more original jokes from insta reels and stuff i will keep updating the jsons!
Ships:
Mama Bot is a slack bot that runs and replies in my native language Bangla! it is made to be used in our bangladeshi peoples channel! it is online 24/7 through Nest. The commands: /mama-help to show all the available commands /mama-koi to ping the bot in a channel /mama-biral to tell a random fact about cats (i kept it while trying out the tutorial) /mama-jokebolo to tell a random joke from the json in Bangla /mama-telljoke to tell a random joke in english (i also kept this from the tutorial) /mama-vallagena to tell a random quote when you are bored /mama-tosskoro to flip a coin /mama-ajkekoitarik to fetch the current date Ai usage : i used gpt to format the json as it would have taken me too long to format it. and it also helped me through SSH in to the Nest Server. Challenges? it is my first time SSH ing into a server ! i found it cool! and probably finidng content for the json for my bot was hard....
|
1793609896.7528255
|
1793696296.7528255
|
|
60204
|
mamacita by @joelleego11 | Stardance
|
joelleego11
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mamacita by @joelleego11 | Stardance
|
1793033326.8103948
|
1793638126.8103948
|
|
36667
|
mamahealth by @nlktech | Stardance
|
nlktech
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mamahealth by @nlktech | Stardance
|
1793278343.372916
|
1793883143.372916
|
|
594
|
man by @not-willem | Stardance
|
not-willem
|
1
|
2.0
|
4
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-03T01:53:07Z", "hours": 2.0, "multiplier": 1.83, "payout": 4, "blessing": "neutral", "text": "i made a silly game about a man kinda just testing this rn but yeah kinda fun game idk", "repo": "https://github.com/not-willem/man", "demo": "https://not-willem.github.io/man/"}]...
|
[{"post_id": 153, "ts": "2026- [{"post_id": 153, "ts": "2026-05-31T23:55:12Z", "hours": 0.8272, "text": "added picle falvoured water"}, {"post_id": 143, "ts": "2026-05-31T22:58:16Z", "hours": 0.2833, "text": "horray! now you can put down eggs but i still need to make it so you can stack them :/"}, {"post_id": 138, "ts": "2026-05-31T22:29:47Z", "hours": 0.6928, "text": "wowo he can move now :3"}, {"post_id": 129, "ts": "2026-05-31T21:35:32Z", "hours": 0.3486, "text": "gameplay peak"}]...
|
Title: man by @not-willem | Stardance
Devlogs:
ga Title: man by @not-willem | Stardance
Devlogs:
gameplay peak
wowo he can move now :3
horray! now you can put down eggs but i still need to make it so you can stack them :/
added picle falvoured water
Ships:
i made a silly game about a man kinda just testing this rn but yeah kinda fun game idk...
|
1793634535.1795661
|
1793720935.1795661
|
|
38536
|
mangOS by @pritesh | Stardance
|
pritesh
|
1
|
19.44
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-25T12:29:18Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "It was my first (or i guess second time) working on a web project . I decided to go with a manga theme here . Added a chapter of one punch man to read . Nothing crazy. Will add more chapters and more apps Will make the UX better i don’t know", "repo": "https://github.com/Pritesh607/mangOS", "demo": "https://mang-os.vercel.app/"}]...
|
[{"post_id": 46432, "ts": "202 [{"post_id": 46432, "ts": "2026-08-13T17:08:29Z", "hours": 9.5878, "text": "Reworked the music and wallpaper app ui , working on a file manager currently where you can add more wallpapers and songs"}, {"post_id": 37144, "ts": "2026-07-29T17:08:11Z", "hours": 2.8497, "text": "Couldn’t get anything done for few days due to school and procastination but whatever You can change wallpaper now And play some music Moved the App icons to the bar at top hmmm…… that’s about it , i know it looks bad , i suck at these…….. whatever…….see u guys later"}, {"post_id": 34559, "ts": "2026-07-25T11:45:15Z", "hours": 1.7831, "text": "It’s now called mangOS cuz it’s manga themed (duh!) and i like mangoes . Added an app to read manga"}, {"post_id": 34457, "ts": "2026-07-25T05:50:57Z", "hours": 4.5867, "text": "It’s taking way longer than expected probably beacuse i couldn’t decide on a theme and when i finally settled on one ,i had no one idea how to proceed . After lots of thinking and experiments, my indecisive brain has decided to go with a Manga style theme .My next plans include a manga reader (obviously) and i don’t know ,we’ll see………"}, {"post_id": 33343, "ts": "2026-07-23T05:13:15Z", "hours": 0.3342, "text": "Just started working on my very own webOS I don’t really have any experience with web tech ,so i think this is going to be an interesting experience . Hope you stick around (and i have enough patience) to see the end result"}]...
|
Title: mangOS by @pritesh | Stardance
Devlogs:
Ju Title: mangOS by @pritesh | Stardance
Devlogs:
Just started working on my very own webOS I don’t really have any experience with web tech ,so i think this is going to be an interesting experience . Hope you stick around (and i have enough patience) to see the end result
It’s taking way longer than expected probably beacuse i couldn’t decide on a theme and when i finally settled on one ,i had no one idea how to proceed . After lots of thinking and experiments, my indecisive brain has decided to go with a Manga style theme .My next plans include a manga reader (obviously) and i don’t know ,we’ll see………
It’s now called mangOS cuz it’s manga themed (duh!) and i like mangoes . Added an app to read manga
Couldn’t get anything done for few days due to school and procastination but whatever You can change wallpaper now And play some music Moved the App icons to the bar at top hmmm…… that’s about it , i know it looks bad , i suck at these…….. whatever…….see u guys later
Reworked the music and wallpaper app ui , working on a file manager currently where you can add more wallpapers and songs
Ships:
It was my first (or i guess second time) working on a web project . I decided to go with a manga theme here . Added a chapter of one punch man to read . Nothing crazy. Will add more chapters and more apps Will make the UX better i don’t know...
|
1793576934.9459634
|
1793663334.9459634
|
|
27739
|
mangopter by @mystiic | Stardance
|
mystiic
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mangopter by @mystiic | Stardance
|
1793382568.0822492
|
1793987368.0822492
|
|
28554
|
maniapad by @meowllory22 | Stardance
|
meowllory22
|
0
|
7.02
|
0
|
[]
|
[{"post_id": 35631, "ts": "202 [{"post_id": 35631, "ts": "2026-07-27T05:49:17Z", "hours": 1.6169, "text": "after a good bit of time struggling with plate generating and teaching myself cad i have finished the case!! my biggest problem was finding the right way to make the rotary encoder on my plate, but i used a normal switch and everything else went smoothly! excited to work on firmware next :)"}, {"post_id": 26434, "ts": "2026-07-11T07:09:20Z", "hours": 3.5, "text": "ive FINALLY finished the pcb!!! organizing the wires was kinda super hard for me to get the hang of but i finally got it and i get to start my case design!! hoping that the wiring actually works well for this tho"}, {"post_id": 20511, "ts": "2026-07-02T03:48:01Z", "hours": 1.0, "text": "finished up the schematic! :) i think im actually starting to understand finally haha"}, {"post_id": 19725, "ts": "2026-07-01T03:38:51Z", "hours": 0.9003, "text": "tryna figure out how to design my pcb schematic and its pretty fun! i think im starting to understand but its very new to me lo,l"}]...
|
Title: maniapad by @meowllory22 | Stardance
Devlo Title: maniapad by @meowllory22 | Stardance
Devlogs:
tryna figure out how to design my pcb schematic and its pretty fun! i think im starting to understand but its very new to me lo,l
finished up the schematic! :) i think im actually starting to understand finally haha
ive FINALLY finished the pcb!!! organizing the wires was kinda super hard for me to get the hang of but i finally got it and i get to start my case design!! hoping that the wiring actually works well for this tho
after a good bit of time struggling with plate generating and teaching myself cad i have finished the case!! my biggest problem was finding the right way to make the rotary encoder on my plate, but i used a normal switch and everything else went smoothly! excited to work on firmware next :)...
|
1793361299.3323705
|
1793966099.3323705
|
|
45214
|
mankshu-os by @himanshupatilpianist | Stardance
|
himanshupatilpianist
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mankshu-os by @himanshupatilpianist | Stard Title: mankshu-os by @himanshupatilpianist | Stardance...
|
1793321460.1705306
|
1793926260.1705306
|
|
13025
|
manus by @swasti | Stardance
|
swasti
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: manus by @swasti | Stardance
|
1793159511.650928
|
1793764311.650928
|
|
49934
|
manyos by @MDDragonO | Stardance
|
MDDragonO
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: manyos by @MDDragonO | Stardance
|
1793314096.6568644
|
1793918896.6568644
|
|
38525
|
mapping by @lx12ucy | Stardance
|
lx12ucy
|
0
|
2.38
|
0
|
[]
|
[{"post_id": 33311, "ts": "202 [{"post_id": 33311, "ts": "2026-07-23T03:35:26Z", "hours": 2.3839, "text": "this is what every IPv4 between 1.0.0.0 and 1.255.255.255 looks like. white pixels responded to my ping and black did not. this is 16.7 million IP addresses, and i’m only done with 1 out of 256. this is going to take a long time !!!!"}]...
|
Title: mapping by @lx12ucy | Stardance
Devlogs:
t Title: mapping by @lx12ucy | Stardance
Devlogs:
this is what every IPv4 between 1.0.0.0 and 1.255.255.255 looks like. white pixels responded to my ping and black did not. this is 16.7 million IP addresses, and i’m only done with 1 out of 256. this is going to take a long time !!!!...
|
1793379143.0794082
|
1793983943.0794082
|
|
23814
|
marcopad - lanlinepbx by @lanlinepbx | Stardance
|
lanlinepbx
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: marcopad - lanlinepbx by @lanlinepbx | Star Title: marcopad - lanlinepbx by @lanlinepbx | Stardance...
|
1793166762.7420776
|
1793771562.7420776
|
|
49177
|
mario game by @strange | Stardance
|
strange
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mario game by @strange | Stardance
|
1793267598.0928214
|
1793872398.0928214
|
|
71140
|
mariowareee by @jownai_galloway | Stardance
|
jownai_galloway
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mariowareee by @jownai_galloway | Stardance
|
1793580754.8679237
|
1794185554.8679237
|
|
44604
|
mark forge by @iamcyrusdaniel | Stardance
|
iamcyrusdaniel
|
0
|
20.99
|
0
|
[]
|
[{"post_id": 45835, "ts": "202 [{"post_id": 45835, "ts": "2026-08-12T15:47:27Z", "hours": 7.5, "text": "Editor Almost Done! | Devlog #4 Hey everyone! I’ve finished most of the editor features. Compared to my first project, I’ve been able to churn out updates and finish this a lot faster so that’s something I’m happy about. I now just need to style everything and make a home page! So far I’ve added a settings menu with dropdown menus and also made the code more stable on different browsers, as well as the fact I spent 2 hours… making my text formatting shortcut apply properly and read all the formatting before making a decision (before it was being really weird and adding lots of the same formatting) First image shows new formatting system vs old formatting system Second image shows settings (not super snazzy looking but gets the job done till I design it properly)"}, {"post_id": 44642, "ts": "2026-08-10T15:23:55Z", "hours": 8.8281, "text": "Huge editor update! | Devlog #3 I’ve actually done a lot on the website so far and I’ll try to explain everything as concise as possible Features The editor is a lot more editor-like now! Resizable divider Between the editor and preview, there’s now a resizable divider! Save button When you press save, it… saves… Why did I explain this Unsaved changes warning It just warns you if you had unsaved changes since last time Linecount indicator Actually pretty happy with the implementation of this Issues I ran into It’s kinda funny that if you search up an issue you’re having, someone already had the issue before you and you can just look at the solution they were given Resizable divider resizing self When any line of the preview exceeded the width of the preview, it would resize the preview till the point it fits properly, until eventually collapsing the textarea element entirely, I fixed this by applying min-width: 0 which prevents the parent div from resizing according to its children Linecount not scrolling When scrolling, the linecount didn’t follow, so I set the linecount to scroll with the textarea element using a JS property called “scrollTop” Textarea cursor fighting divider cursor When dragging the divider, it would flicker between 2 cursors since it would hover over the textarea element, so I had to go and fix it by making the entire window display that specific cursor so that they wouldn’t interact like this Overall I’m happy with my progress and I’m actually finishing things up a lot faster than on my first project! Stay tuned for the next devlog! 🚀 First image is the editor (my CSS sucks 😭 ) Second image shows local storage"}, {"post_id": 42692, "ts": "2026-08-07T15:29:33Z", "hours": 4.0844, "text": "Mark Forge Update! | Devlog #2 I’ve added keyboard shortcuts for formatting, but they do have some issues… I ran into this issue where italicizing and bolding kind of fight each other since they share the same characters for their formatting, I need to fix that in the next update 😭 For now I have a demo of the formatter and its keyboard shortcuts in action!"}, {"post_id": 42025, "ts": "2026-08-06T15:58:53Z", "hours": 0.5767, "text": "So far I’ve created the file system, not really much else that I’ve done other than research on markdown rendering libraries and figuring out the one I decided on, which is called “marked” My plan with this project is to make a really easy to understand Markdown editor which is simple in principal but I’m hoping to add features that will make it a little more than just an editor"}]...
|
Title: mark forge by @iamcyrusdaniel | Stardance
Title: mark forge by @iamcyrusdaniel | Stardance
Devlogs:
So far I’ve created the file system, not really much else that I’ve done other than research on markdown rendering libraries and figuring out the one I decided on, which is called “marked” My plan with this project is to make a really easy to understand Markdown editor which is simple in principal but I’m hoping to add features that will make it a little more than just an editor
Mark Forge Update! | Devlog #2 I’ve added keyboard shortcuts for formatting, but they do have some issues… I ran into this issue where italicizing and bolding kind of fight each other since they share the same characters for their formatting, I need to fix that in the next update 😭 For now I have a demo of the formatter and its keyboard shortcuts in action!
Huge editor update! | Devlog #3 I’ve actually done a lot on the website so far and I’ll try to explain everything as concise as possible Features The editor is a lot more editor-like now! Resizable divider Between the editor and preview, there’s now a resizable divider! Save button When you press save, it… saves… Why did I explain this Unsaved changes warning It just warns you if you had unsaved changes since last time Linecount indicator Actually pretty happy with the implementation of this Issues I ran into It’s kinda funny that if you search up an issue you’re having, someone already had the issue before you and you can just look at the solution they were given Resizable divider resizing self When any line of the preview exceeded the width of the preview, it would resize the preview till the point it fits properly, until eventually collapsing the textarea element entirely, I fixed this by applying min-width: 0 which prevents the parent div from resizing according to its children Linecount not scrolling When scrolling, the linecount didn’t follow, so I set the linecount to scroll with the textarea element using a JS property called “scrollTop” Textarea cursor fighting divider cursor When dragging the divider, it would flicker between 2 cursors since it would hover over the textarea element, so I had to go and fix it by making the entire window display that specific cursor so that they wouldn’t interact like this Overall I’m happy with my progress and I’m actually finishing things up a lot faster than on my first project! Stay tuned for the next devlog! 🚀 First image is the editor (my CSS sucks 😭 ) Second image shows local storage
Editor Almost Done! | Devlog #4 Hey everyone! I’ve finished most of the editor features. Compared to my first project, I’ve been able to churn out updates and finish this a lot faster so that’s something I’m happy about. I now just need to style everything and make a home page! So far I’ve added a settings menu with dropdown menus and also made the code more stable on different browsers, as well as the fact I spent 2 hours… making my text formatting shortcut apply properly and read all the formatting before making a decision (before it was being really weird and adding lots of the same formatting) First image shows new formatting system vs old formatting system Second image shows settings (not super snazzy looking but gets the job done till I design it properly)...
|
1793285575.4605517
|
1793890375.4605517
|
|
35612
|
markdown-blog by @DunkelBit | Stardance
|
DunkelBit
|
0
|
2.63
|
0
|
[]
|
[{"post_id": 28936, "ts": "202 [{"post_id": 28936, "ts": "2026-07-15T15:33:36Z", "hours": 2.6267, "text": "My First project"}]...
|
Title: markdown-blog by @DunkelBit | Stardance
De Title: markdown-blog by @DunkelBit | Stardance
Devlogs:
My First project...
|
1793166757.3511498
|
1793771557.3511498
|
|
29696
|
markdowned by @leethana | Stardance
|
leethana
|
1
|
10.0
|
56
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-05T13:55:57Z", "hours": 10.0, "multiplier": 5.46, "payout": 56, "blessing": "neutral", "text": "I made an AI first Markdown editor. It is fully client side and uses the Groq API and Llama 3.1 8b Instant which is very fast. The AI can summarize and modify the document. It is also installable as a PWA and supports the Web File Handler API.", "repo": "https://github.com/ingStudiosOfficial/markdowned", "demo": "https://markdowned.ingstudios.dev"}]...
|
[{"post_id": 22842, "ts": "202 [{"post_id": 22842, "ts": "2026-07-05T13:41:37Z", "hours": 0.5731, "text": "Added the ability to print and rename the document!"}, {"post_id": 22796, "ts": "2026-07-05T11:39:48Z", "hours": 0.3892, "text": "added some final touches and fixed some bugs!"}, {"post_id": 21319, "ts": "2026-07-03T05:42:09Z", "hours": 1.1642, "text": "I used Vite PWA to make markdowned a PWA and now it caches assets. It also handles Markdown files from your system."}, {"post_id": 20702, "ts": "2026-07-02T11:27:21Z", "hours": 1.0828, "text": "I added Hemingway mode (you cant use backspace), added import/export markdown files, and syntax highlighting."}, {"post_id": 20567, "ts": "2026-07-02T05:43:39Z", "hours": 7.0542, "text": "Basic Markdown functionality with AI and streaming. First project that’s not using Material Design, I’m trying out Kor UI instead!"}]...
|
Title: markdowned by @leethana | Stardance
Devlog Title: markdowned by @leethana | Stardance
Devlogs:
Basic Markdown functionality with AI and streaming. First project that’s not using Material Design, I’m trying out Kor UI instead!
I added Hemingway mode (you cant use backspace), added import/export markdown files, and syntax highlighting.
I used Vite PWA to make markdowned a PWA and now it caches assets. It also handles Markdown files from your system.
added some final touches and fixed some bugs!
Added the ability to print and rename the document!
Ships:
I made an AI first Markdown editor. It is fully client side and uses the Groq API and Llama 3.1 8b Instant which is very fast. The AI can summarize and modify the document. It is also installable as a PWA and supports the Web File Handler API....
|
1793616963.7697728
|
1793703363.7697728
|
|
54015
|
mars drone by @pragnaarvind17 | Stardance
|
pragnaarvind17
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mars drone by @pragnaarvind17 | Stardance
|
1793516009.5034657
|
1794120809.5034657
|
|
37302
|
mars explorer by @parvP | Stardance
|
parvP
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mars explorer by @parvP | Stardance
|
1793472609.3974648
|
1794077409.3974648
|
|
64794
|
mars-explorer by @mhuzaifa | Stardance
|
mhuzaifa
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: mars-explorer by @mhuzaifa | Stardance
|
1793066053.6463869
|
1793670853.6463869
|
|
8812
|
marvschwamm.de by @mervin | Stardance
|
mervin
|
1
|
7.55
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-07T20:53:05Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made MY website as lection for me to learn java script and HTML. I made the style dark and I think purple looks good and fits the style so I made some text purple. the Website shows what I did in the last few weeks and now its there yet without a certificate so you can only visit it under http:// and not under https:// but I hope this wont annoy. I integrated a aboutme in the website so you can learn things about me and you can get to know me better! I’ll also show my current and my future projects on the website so you’ll always be up to date. you can visit it NOW under http://marvschwamm.de", "repo": "https://github.com/MarvSchwamm123/Website", "demo": "http://marvschwamm.de"}]...
|
[{"post_id": 4530, "ts": "2026 [{"post_id": 4530, "ts": "2026-06-07T21:29:01Z", "hours": 0.5461, "text": "just a navigator advice for my Website. First of all to load the languages you have to click on the settings Icon in the top right corner then tip on the globe and then choose your language then the text will be loaded right once you choosed your language you are ready to go and every time you load the website it will be your language"}, {"post_id": 4109, "ts": "2026-06-07T09:36:23Z", "hours": 0.2533, "text": "HAH FORHOT the Home button quickly added it before I ship it because Ill ship it in a few minutes so you can host the Website locally just write wsl: cd marvschwamm.de source .venv/bin/activate python3 main.py"}, {"post_id": 3815, "ts": "2026-06-06T21:28:03Z", "hours": 1.3092, "text": "I nearly finished the aboutme page with a lot of text and a bit of trouble wit hshowing the text. I rearranged the text showing so it has its own text.js so its better for people to understand."}, {"post_id": 3739, "ts": "2026-06-06T19:40:15Z", "hours": 2.4856, "text": "Im working on my about me page with the information aboutm e youll be able to find there hopefully on sunday. Im making the background be a turning earth ball. for the earth Im using https://unpkg.com/ [email protected] /build/three.module.js and for the country borders I took the information from https://github.com/subyfly/topojson/blob/master/world-countries.json?short_path=c9c2b74 to show countrie borders on the globe turning in the background. 21:40 06.06.2026"}, {"post_id": 2964, "ts": "2026-06-05T21:33:44Z", "hours": 2.7211, "text": "Im working on a draggable Settings window for Language and style."}]...
|
Title: marvschwamm.de by @mervin | Stardance
Devl Title: marvschwamm.de by @mervin | Stardance
Devlogs:
Im working on a draggable Settings window for Language and style.
Im working on my about me page with the information aboutm e youll be able to find there hopefully on sunday. Im making the background be a turning earth ball. for the earth Im using https://unpkg.com/ [email protected] /build/three.module.js and for the country borders I took the information from https://github.com/subyfly/topojson/blob/master/world-countries.json?short_path=c9c2b74 to show countrie borders on the globe turning in the background. 21:40 06.06.2026
I nearly finished the aboutme page with a lot of text and a bit of trouble wit hshowing the text. I rearranged the text showing so it has its own text.js so its better for people to understand.
HAH FORHOT the Home button quickly added it before I ship it because Ill ship it in a few minutes so you can host the Website locally just write wsl: cd marvschwamm.de source .venv/bin/activate python3 main.py
just a navigator advice for my Website. First of all to load the languages you have to click on the settings Icon in the top right corner then tip on the globe and then choose your language then the text will be loaded right once you choosed your language you are ready to go and every time you load the website it will be your language
Ships:
I made MY website as lection for me to learn java script and HTML. I made the style dark and I think purple looks good and fits the style so I made some text purple. the Website shows what I did in the last few weeks and now its there yet without a certificate so you can only visit it under http:// and not under https:// but I hope this wont annoy. I integrated a aboutme in the website so you can learn things about me and you can get to know me better! I’ll also show my current and my future projects on the website so you’ll always be up to date. you can visit it NOW under http://marvschwamm.de...
|
1793562894.6480072
|
1793649294.6480072
|
|
37908
|
mary website by @marygoat | Stardance
|
marygoat
|
2
|
7.0
|
8
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-29T02:46:28Z", "hours": 4.0, "multiplier": 1.73, "payout": 8, "blessing": "neutral", "text": "Hello, and welcome to my personal website! Sections: Home: Info about me! Projects: Take a look at my projects! Featuring: BeanPet: A virtual desktop cat for your computer! TEMPO SURGE: A fast-paced game, based off WarioWare! Credits Why was this made? I made this for the Stardance Hack Club Program, for the personal website mission! I also made this in order to remember how to use HTML, CSS, and Javascript since it has been a long time since I used them. I strive to make neater and more polished sites with more interactivity! AI Usage I have used Claude to figure out why the background image wasn’t appearing and for some help debugging the formatting issues. I also used ChatGPT to help me figure out why the navbar buttons didn’t play a click sound.", "repo": "https://github.com/awesomesauce4646/personal-website", "demo": "https://marythegoat.com/"}, {"ship_num": 2, "ts": "2026-07-22T23:18:15Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i made a personal website for the stardance mission :) i have used html and css a lot years ago, but i have forgotten most of it, so it was challenging having to review how to use html and css. it led me to use a lot of time just going over the basics and getting stuck on the simple mistakes, like how and when to use div to group different elements together, or how to move the image onto the right side of the paragraph box, which i used claude to guide me in the right direction. i chose this project because i wanted to review html and css, and to also make a quick project before i go onto a project that interests me more. im proud that i have successfully made a nice little website that has some information about me, and i like the simple blue aesthetic it has. i also like the images being next to the text, i think it adds a nice visual! its a pretty simple website, mostly just words but there are different sections that you can go to: home, facts, and the credits page. overall this has been fun to get back into html and css a bit and i might go back to this website or completely start over and make a new one someday! :)", "repo": "https://github.com/awesomesauce4646/personal-website", "demo": "https://marythegoat.com/"}]...
|
[{"post_id": 84065, "ts": "202 [{"post_id": 84065, "ts": "2026-10-29T02:38:04Z", "hours": 0.8661, "text": "MARY WEBSITE DEVLOG: #8 SHIP! What’s new? READme update: More detailed, and I added an image! Click noise: When you swithc sections, a clicky noise plays! Project change: I put in BeanPet instead of Note Mash for the projects page Struggles? The audio wouldn’t play when switching navbars, so I asked ChatGPT to help me delay the switch so that the audio would play. What’s next? SHIP! I wasn’t planning on working on this more, but Stardance is ending, so I am shipping!"}, {"post_id": 62404, "ts": "2026-09-05T19:00:38Z", "hours": 1.3564, "text": "MARY WEBSITE DEVLOG #7 small additions okay it’s been a while, but i added a few little things to make it a bit more lively! Additions: Navbar animation + color change on hover Footer maryGOAT on click toggles purple or white color Changed cursor to a blue one it was way harder than i was expecting to make an animation that looks good, and i still dont quite like it but its good for now lol"}, {"post_id": 43136, "ts": "2026-08-08T07:19:13Z", "hours": 0.4742, "text": "nav bar change! i have replaced credits and facts with projects and contact, and now i think the whole website looks way better than before! im not sure what to add to it now, as i am pretty content how it looks. its pretty simple but nice:)"}, {"post_id": 43056, "ts": "2026-08-08T03:45:42Z", "hours": 1.1458, "text": "redesign! i have decided to replace fonts, give different borders, and upscale the elements in my website! i really like how its going so far, and excited to see how it ends up!"}, {"post_id": 42450, "ts": "2026-08-07T05:38:32Z", "hours": 0.6408, "text": "header! i have decided to revamp this website and try to use it as an actual website that can show the things i have made and have information about me. so far, i have redesigned the header to look a bit more appealing. i thought about just restarting completely, but i decided against it and instead just using it as a starting point."}, {"post_id": 32743, "ts": "2026-07-22T02:52:28Z", "hours": 1.275, "text": "did some formatting, struggled a LOT with making the text look centered and neat, as well as trying to get the image onto the right side. i was able to fix it with flex-direction: reverse row, display: flex, and all of those flex box adjustments. i had to go onto a learning app (mimo) to remember all of the css flexbox stuff which helped a LOT"}, {"post_id": 32269, "ts": "2026-07-21T10:32:33Z", "hours": 0.8547, "text": "added two pages: facts and credits, and stylized the webpage a bit. i couldnt figure out how to add the image as the background, so i asked claude for help: my issue was that the image link was trying to find a path, but it didnt need to find a path since the image was already in the same folder."}, {"post_id": 32249, "ts": "2026-07-21T09:24:39Z", "hours": 0.3722, "text": "making my own website huzzah! a lot of paragraphs on the website so far, trying to remember the html and css knowledge i used have years ago. nothin much so far but i am referencing old works (they were pretty basic but helpful) and it’s helping me get into a flow and kinda guide me on what i should do next, such as reminding me that you can add links"}]...
|
Title: mary website by @marygoat | Stardance
Devl Title: mary website by @marygoat | Stardance
Devlogs:
making my own website huzzah! a lot of paragraphs on the website so far, trying to remember the html and css knowledge i used have years ago. nothin much so far but i am referencing old works (they were pretty basic but helpful) and it’s helping me get into a flow and kinda guide me on what i should do next, such as reminding me that you can add links
added two pages: facts and credits, and stylized the webpage a bit. i couldnt figure out how to add the image as the background, so i asked claude for help: my issue was that the image link was trying to find a path, but it didnt need to find a path since the image was already in the same folder.
did some formatting, struggled a LOT with making the text look centered and neat, as well as trying to get the image onto the right side. i was able to fix it with flex-direction: reverse row, display: flex, and all of those flex box adjustments. i had to go onto a learning app (mimo) to remember all of the css flexbox stuff which helped a LOT
header! i have decided to revamp this website and try to use it as an actual website that can show the things i have made and have information about me. so far, i have redesigned the header to look a bit more appealing. i thought about just restarting completely, but i decided against it and instead just using it as a starting point.
redesign! i have decided to replace fonts, give different borders, and upscale the elements in my website! i really like how its going so far, and excited to see how it ends up!
nav bar change! i have replaced credits and facts with projects and contact, and now i think the whole website looks way better than before! im not sure what to add to it now, as i am pretty content how it looks. its pretty simple but nice:)
MARY WEBSITE DEVLOG #7 small additions okay it’s been a while, but i added a few little things to make it a bit more lively! Additions: Navbar animation + color change on hover Footer maryGOAT on click toggles purple or white color Changed cursor to a blue one it was way harder than i was expecting to make an animation that looks good, and i still dont quite like it but its good for now lol
MARY WEBSITE DEVLOG: #8 SHIP! What’s new? READme update: More detailed, and I added an image! Click noise: When you swithc sections, a clicky noise plays! Project change: I put in BeanPet instead of Note Mash for the projects page Struggles? The audio wouldn’t play when switching navbars, so I asked ChatGPT to help me delay the switch so that the audio would play. What’s next? SHIP! I wasn’t planning on working on this more, but Stardance is ending, so I am shipping!
Ships:
i made a personal website for the stardance mission :) i have used html and css a lot years ago, but i have forgotten most of it, so it was challenging having to review how to use html and css. it led me to use a lot of time just going over the basics and getting stuck on the simple mistakes, like how and when to use div to group different elements together, or how to move the image onto the right side of the paragraph box, which i used claude to guide me in the right direction. i chose this project because i wanted to review html and css, and to also make a quick project before i go onto a project that interests me more. im proud that i have successfully made a nice little website that has some information about me, and i like the simple blue aesthetic it has. i also like the images being next to the text, i think it adds a nice visual! its a pretty simple website, mostly just words but there are different sections that you can go to: home, facts, and the credits page. overall this has been fun to get back into html and css a bit and i might go back to this website or completely start over and make a new one someday! :)
Hello, and welcome to my personal website! Sections: Home: Info about me! Projects: Take a look at my projects! Featuring: BeanPet: A virtual desktop cat for your computer! TEMPO SURGE: A fast-paced game, based off WarioWare! Credits Why was this made? I made this for the Stardance Hack Club Program, for the personal website mission! I also made this in order to remember how to use HTML, CSS, and Javascript since it has been a long time since I used them. I strive to make neater and more polished sites with more interactivity! AI Usage I have used Claude to figure out why the background image wasn’t appearing and for some help debugging the formatting issues. I also used ChatGPT to help me figure out why the navbar buttons didn’t play a click sound....
|
1793576921.5407946
|
1793663321.5407946
|
|
41293
|
maryOS by @marygoat | Stardance
|
marygoat
|
2
|
10.0
|
9
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-18T19:07:06Z", "hours": 2.0, "multiplier": 5.67, "payout": 9, "blessing": "neutral", "text": "i made a web operating system, featuring six apps! it was challenging following the guide and making it work, while also making it my own. making the apps open and close properly was one of my biggest struggles. but once i got that working, the rest was easy! im proud of how this looks like, pretty simplistic and easy to use. to test my project, just press try project down below or go to: https://awesomesauce4646.github.io/maryos/ hope you enjoy using maryOS!", "repo": "https://github.com/awesomesauce4646/maryos", "demo": "https://awesomesauce4646.github.io/maryos/"}, {"ship_num": 2, "ts": "2026-08-01T23:00:26Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a web-based desktop! maryOS is a desktop that is completely client-sided. Features Desktop Environment Drag and close windows Top bar with a clock and date Note app that saves with local storage Game link window Welcome window It was challenging deploying the javascript code that allowed the windows to drag around and close and all of that fun stuff, since I only ever learned the basics of javascript and this felt like a lot of new content. I’m proud that I got it to finally work after a lot of time debugging, and searching for help when I needed it. I really like how it looks, even if it’s simple, and I will probably spend more time on this! To test my project, you can click on the icons on the bottom of the screen to open windows!", "repo": "https://github.com/awesomesauce4646/maryos", "demo": "https://awesomesauce4646.github.io/maryos/"}]...
|
[{"post_id": 49798, "ts": "202 [{"post_id": 49798, "ts": "2026-08-18T18:52:41Z", "hours": 0.4022, "text": "DEVLOG 8! SEARCH BAR i have added a searchbar, and I think i’m ready to ship! I searched it up on how to add a search bar, and I got some code thanks to: https://stackoverflow.com/a/42926071 it was a bit funky at first, since when i tested the code, it’d search what I put in but then add “site:example . com”, and i didn’t want that, so I figured out how to remove that added value so it’d only search up what the user put in. i think the search bar was a nice added feature, especially since i think every webOS should have one!"}, {"post_id": 48638, "ts": "2026-08-17T03:39:25Z", "hours": 1.2697, "text": "DEVLOG 7! CALCULATOR i have made a calculator for my webos! it was difficult learning the javascript in order for the text display to change properly, just like a calculator, but i was able to do it with the help of this guide: https://zellwk.com/blog/calculator-part-1/ i spent a lot of time figuring out how to stylize the calculator and also implementing the proper javascript in order to make it divide, multiply, and calculate. i had a small issue of just mispelling textContent, so it prevented the clear button from working."}, {"post_id": 39169, "ts": "2026-08-01T22:53:42Z", "hours": 1.0519, "text": "noteapp saves! finally got it to save notes written in local storage :) this took too long in my opinion but hey, as long as it gets done! im going to ship this, since it seems like i got the requirements too, but i am planning on working on this still!"}, {"post_id": 38765, "ts": "2026-08-01T10:12:53Z", "hours": 1.4156, "text": "game window! added a lil game window to my webos, and also made it so when you click on the icons the border changes colors so that its selected. it doesn’t work for the games icon, so ima debug that, but hi and notes work! i also have to finish up programming the notes app lol i learned a lot more about java script functions during this, which was fun :)"}, {"post_id": 38158, "ts": "2026-07-31T12:24:07Z", "hours": 2.6739, "text": "window opens! this took way longer than i want to admit lol, i asked claude to help me debug because i had structured my code a bit weirdly. after a LOT of trial and error, the little app button on the bottom opens up the welcome app! i have learned about data-targets through the debugging progress, which is kinda like a different type of id? im still not 100% how it works, but im getting there!"}, {"post_id": 37527, "ts": "2026-07-30T10:30:20Z", "hours": 1.6519, "text": "draggable window! made it so you can drag the window also tried stylizing it a bit more, which took longer than expected lol since my css wasn’t behaving, sometimes the handle overflowed or didn’t take enough space, but i figured it out :) im pretty content on how this is looking so far, excited to see where this goes!"}, {"post_id": 37432, "ts": "2026-07-30T05:03:10Z", "hours": 0.6542, "text": "stylizing web os! gave it a background and also made a window! it was hard to decide on what theme it should be, but i decided to make it a bluish purplish vibe since those are my top two fav colors, and i think they look nice together. i was confused about flex, but the froggy flex game listed on the guide helped me a lot! im getting the hang of it now :)"}, {"post_id": 36758, "ts": "2026-07-29T00:53:14Z", "hours": 0.3714, "text": "starting a web os! decided to pick up on the web os mission… seems pretty fun! i was following the guide, but disliked how they put all of the style things into one div line, so i just made a style.css file so it could be a bit more organized. so far, it’s going pretty smoothly!"}]...
|
Title: maryOS by @marygoat | Stardance
Devlogs:
s Title: maryOS by @marygoat | Stardance
Devlogs:
starting a web os! decided to pick up on the web os mission… seems pretty fun! i was following the guide, but disliked how they put all of the style things into one div line, so i just made a style.css file so it could be a bit more organized. so far, it’s going pretty smoothly!
stylizing web os! gave it a background and also made a window! it was hard to decide on what theme it should be, but i decided to make it a bluish purplish vibe since those are my top two fav colors, and i think they look nice together. i was confused about flex, but the froggy flex game listed on the guide helped me a lot! im getting the hang of it now :)
draggable window! made it so you can drag the window also tried stylizing it a bit more, which took longer than expected lol since my css wasn’t behaving, sometimes the handle overflowed or didn’t take enough space, but i figured it out :) im pretty content on how this is looking so far, excited to see where this goes!
window opens! this took way longer than i want to admit lol, i asked claude to help me debug because i had structured my code a bit weirdly. after a LOT of trial and error, the little app button on the bottom opens up the welcome app! i have learned about data-targets through the debugging progress, which is kinda like a different type of id? im still not 100% how it works, but im getting there!
game window! added a lil game window to my webos, and also made it so when you click on the icons the border changes colors so that its selected. it doesn’t work for the games icon, so ima debug that, but hi and notes work! i also have to finish up programming the notes app lol i learned a lot more about java script functions during this, which was fun :)
noteapp saves! finally got it to save notes written in local storage :) this took too long in my opinion but hey, as long as it gets done! im going to ship this, since it seems like i got the requirements too, but i am planning on working on this still!
DEVLOG 7! CALCULATOR i have made a calculator for my webos! it was difficult learning the javascript in order for the text display to change properly, just like a calculator, but i was able to do it with the help of this guide: https://zellwk.com/blog/calculator-part-1/ i spent a lot of time figuring out how to stylize the calculator and also implementing the proper javascript in order to make it divide, multiply, and calculate. i had a small issue of just mispelling textContent, so it prevented the clear button from working.
DEVLOG 8! SEARCH BAR i have added a searchbar, and I think i’m ready to ship! I searched it up on how to add a search bar, and I got some code thanks to: https://stackoverflow.com/a/42926071 it was a bit funky at first, since when i tested the code, it’d search what I put in but then add “site:example . com”, and i didn’t want that, so I figured out how to remove that added value so it’d only search up what the user put in. i think the search bar was a nice added feature, especially since i think every webOS should have one!
Ships:
I made a web-based desktop! maryOS is a desktop that is completely client-sided. Features Desktop Environment Drag and close windows Top bar with a clock and date Note app that saves with local storage Game link window Welcome window It was challenging deploying the javascript code that allowed the windows to drag around and close and all of that fun stuff, since I only ever learned the basics of javascript and this felt like a lot of new content. I’m proud that I got it to finally work after a lot of time debugging, and searching for help when I needed it. I really like how it looks, even if it’s simple, and I will probably spend more time on this! To test my project, you can click on the icons on the bottom of the screen to open windows!
i made a web operating system, featuring six apps! it was challenging following the guide and making it work, while also making it my own. making the apps open and close properly was one of my biggest struggles. but once i got that working, the rest was easy! im proud of how this looks like, pretty simplistic and easy to use. to test my project, just press try project down below or go to: https://awesomesauce4646.github.io/maryos/ hope you enjoy using maryOS!...
|
1793631065.065429
|
1793717465.065429
|
|
26886
|
mast by @toqtu | Stardance
|
toqtu
|
1
|
32.0
|
465
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-18T18:27:27Z", "hours": 32.0, "multiplier": 14.7, "payout": 465, "blessing": "neutral", "text": "I built a parser for mathematical expressions that turns math input into an abstract syntax tree. From there, you can do things like simplifying or differentiating the expression. Learning about parsing methods was genuinely interesting — once I understood the theory behind lexing and parsing, implementation was fairly straightforward. After getting the basic parsing working, I wanted to build a simple web interface for it. Looking back, the interface ended up taking a lot more time than I expected. During this project I learned a lot about compiler design and language theory as well as web development and application deployment. All in all I am quite happy with the result.", "repo": "https://github.com/fritl/mast", "demo": "https://mast.toqtou.me"}]...
|
[{"post_id": 30710, "ts": "202 [{"post_id": 30710, "ts": "2026-07-18T14:50:01Z", "hours": 9.0289, "text": "Finish Website I added the following to the website Button for evaluation an expression Reload ast and LaTeX only if there is no input for 500ms Tutorial on the Home page to show all features Info page for additional information A footer with info about the build (commit, branch, time) Improve colors especially for light mode I also noticed that my project can’t be cloned on windows because windows doesn’t allow * in filenames. I updated the filenames but old commits still can’t be checked out easily."}, {"post_id": 29568, "ts": "2026-07-16T16:29:13Z", "hours": 10.2408, "text": "New Website Starting Over I wasn’t happy with the website Claude generated for me, so instead of iterating on it further, I decided to build it myself from scratch. Why SolidJS I’m not a web dev. I’ve written JavaScript before, but never really worked with a framework on a personal project. For this one I picked SolidJS, for two reasons: I didn’t want to use React, and I’d heard Solid does similar things but better. Building Everything From Scratch One tradeoff with SolidJS became obvious fast: there’s no real ecosystem of UI libraries to lean on. Every component and every line of CSS in this project, I wrote myself. Dev Setup To make local development easier, I added a Dockerfile and a docker-compose setup. What’s Left The site isn’t finished yet. The main thing still missing is buttons for a few actions."}, {"post_id": 22913, "ts": "2026-07-05T15:34:35Z", "hours": 3.0433, "text": "Web demo I wrote a small API for my project using FastAPI, then handed the code to Claude. After a few iterations, I had a fairly good looking web interface for interacting with my project. I also experimented with making all tree nodes circular. It turns out circles grow very quickly as numbers get bigger, so keeping every circle the same size caused the text to overflow. Switching to ellipses solved this. I also spent some time reducing the number of parentheses in the output to make it more readable."}, {"post_id": 22050, "ts": "2026-07-04T09:28:57Z", "hours": 2.2544, "text": "Differentiation My math program can now symbolically compute the derivative of an expression. Challenges One tricky case was finding the derivative of x^x . Since x^x = e^(x*ln(x)) , rewriting it in that form let the existing exponential and product rules handle it correctly. Restrictions Differentiation works well, but outputs aren’t always in the simplest form. Differentiating (x^2)/2 , for instance, currently gives 0.5*2*x instead of the simplified x . Simplifying this is a lot harder than it looks at first because it is really hard to determine whether an action results in a simpler form or not. Next up I’ll pause the AST experiments here for now. There’s a lot more that could be done, but I want to make it demoable. Next step: a small web UI so people can try it out directly."}, {"post_id": 21399, "ts": "2026-07-03T10:06:38Z", "hours": 1.8942, "text": "Functions and Exponents I’ve just added support for exponents and standard mathematical functions, including sin , cos , tan , ln , log , and sqrt . The implementation was fairly straightforward. The lexer simply tokenizes the ^ character into a Power token. Extending the lexer from there was just a matter of adding the token rule and implementing the corresponding evaluation logic. The Precedence Gotcha I did run into one classic mathematical quirk with my parser rules. Currently, -x^2 is parsed as (-x)^2 because the unary minus operator mistakenly has higher precedence than the exponent. Standard mathematical convention dictates it should be evaluated as -(x^2) . While I plan to fix this in the parser proper, the current workaround is just to use explicit parentheses when writing negative exponents. Next Up: Symbolic Differentiation As a final step for this milestone, I want to implement symbolic differentiation utilizing the chain rule. This will allow the engine to take simple expressions like x^2 or sin(2x) and automatically differentiate them into 2*x and 2*cos(2x) respectively."}, {"post_id": 20247, "ts": "2026-07-01T19:53:28Z", "hours": 1.1408, "text": "Simplification I added some trivial simplification rules to my math parser. It checks for simple rules like x+0 -> x or x+x -> 2x . Of course, you could go way deeper on simplification. My current implementation can’t simplify 2*x + 3*x -> 5*x , since my rules only match syntactically identical terms, not terms that differ by a coefficient. To handle cases like this, you’d need some sort of term-collection method that groups like terms together before combining them. You could also expand expressions first and then simplify, which would let the parser recognize things like (x+1)^2 - (x^2+2x+1) -> 0 . My simple rules won’t bring expressions into their absolute simplest form, and they certainly don’t produce a standardized form that lets you check two expressions for equality. But they do make the program’s output noticeably more readable."}, {"post_id": 19462, "ts": "2026-06-30T19:52:16Z", "hours": 0.9978, "text": "Input evaluation You can now evaluate inputs, e.g. (3+2)*6 outputs 30 . This works by recursively evaluating the AST nodes — operator precedence comes for free from the tree structure. All variables found in the input are collected, and the user is prompted to assign a value to each one. This somewhat defeats the purpose of variables for now, but it’s a stepping stone — variables become essential once symbolic differentiation or a proper UI come into play."}, {"post_id": 19155, "ts": "2026-06-30T12:21:49Z", "hours": 3.2844, "text": "Lexing + Parising For my math parser I implemented the lexer and the parser. The lexer splits the mathematical input into tokens. The recursive descent parser parses those tokens into an abstract syntax tree. For me the most interesting part was learning about different parsing techniques which also tought me a lot about compilers. Next up I will implement the evaluation of expressions to calculate inputs like 2 + 3 * 5. Due to the design of the tree it should already respect pemdas."}]...
|
Title: mast by @toqtu | Stardance
Devlogs:
Lexing Title: mast by @toqtu | Stardance
Devlogs:
Lexing + Parising For my math parser I implemented the lexer and the parser. The lexer splits the mathematical input into tokens. The recursive descent parser parses those tokens into an abstract syntax tree. For me the most interesting part was learning about different parsing techniques which also tought me a lot about compilers. Next up I will implement the evaluation of expressions to calculate inputs like 2 + 3 * 5. Due to the design of the tree it should already respect pemdas.
Input evaluation You can now evaluate inputs, e.g. (3+2)*6 outputs 30 . This works by recursively evaluating the AST nodes — operator precedence comes for free from the tree structure. All variables found in the input are collected, and the user is prompted to assign a value to each one. This somewhat defeats the purpose of variables for now, but it’s a stepping stone — variables become essential once symbolic differentiation or a proper UI come into play.
Simplification I added some trivial simplification rules to my math parser. It checks for simple rules like x+0 -> x or x+x -> 2x . Of course, you could go way deeper on simplification. My current implementation can’t simplify 2*x + 3*x -> 5*x , since my rules only match syntactically identical terms, not terms that differ by a coefficient. To handle cases like this, you’d need some sort of term-collection method that groups like terms together before combining them. You could also expand expressions first and then simplify, which would let the parser recognize things like (x+1)^2 - (x^2+2x+1) -> 0 . My simple rules won’t bring expressions into their absolute simplest form, and they certainly don’t produce a standardized form that lets you check two expressions for equality. But they do make the program’s output noticeably more readable.
Functions and Exponents I’ve just added support for exponents and standard mathematical functions, including sin , cos , tan , ln , log , and sqrt . The implementation was fairly straightforward. The lexer simply tokenizes the ^ character into a Power token. Extending the lexer from there was just a matter of adding the token rule and implementing the corresponding evaluation logic. The Precedence Gotcha I did run into one classic mathematical quirk with my parser rules. Currently, -x^2 is parsed as (-x)^2 because the unary minus operator mistakenly has higher precedence than the exponent. Standard mathematical convention dictates it should be evaluated as -(x^2) . While I plan to fix this in the parser proper, the current workaround is just to use explicit parentheses when writing negative exponents. Next Up: Symbolic Differentiation As a final step for this milestone, I want to implement symbolic differentiation utilizing the chain rule. This will allow the engine to take simple expressions like x^2 or sin(2x) and automatically differentiate them into 2*x and 2*cos(2x) respectively.
Differentiation My math program can now symbolically compute the derivative of an expression. Challenges One tricky case was finding the derivative of x^x . Since x^x = e^(x*ln(x)) , rewriting it in that form let the existing exponential and product rules handle it correctly. Restrictions Differentiation works well, but outputs aren’t always in the simplest form. Differentiating (x^2)/2 , for instance, currently gives 0.5*2*x instead of the simplified x . Simplifying this is a lot harder than it looks at first because it is really hard to determine whether an action results in a simpler form or not. Next up I’ll pause the AST experiments here for now. There’s a lot more that could be done, but I want to make it demoable. Next step: a small web UI so people can try it out directly.
Web demo I wrote a small API for my project using FastAPI, then handed the code to Claude. After a few iterations, I had a fairly good looking web interface for interacting with my project. I also experimented with making all tree nodes circular. It turns out circles grow very quickly as numbers get bigger, so keeping every circle the same size caused the text to overflow. Switching to ellipses solved this. I also spent some time reducing the number of parentheses in the output to make it more readable.
New Website Starting Over I wasn’t happy with the website Claude generated for me, so instead of iterating on it further, I decided to build it myself from scratch. Why SolidJS I’m not a web dev. I’ve written JavaScript before, but never really worked with a framework on a personal project. For this one I picked SolidJS, for two reasons: I didn’t want to use React, and I’d heard Solid does similar things but better. Building Everything From Scratch One tradeoff with SolidJS became obvious fast: there’s no real ecosystem of UI libraries to lean on. Every component and every line of CSS in this project, I wrote myself. Dev Setup To make local development easier, I added a Dockerfile and a docker-compose setup. What’s Left The site isn’t finished yet. The main thing still missing is buttons for a few actions.
Finish Website I added the following to the website Button for evaluation an expression Reload ast and LaTeX only if there is no input for 500ms Tutorial on the Home page to show all features Info page for additional information A footer with info about the build (commit, branch, time) Improve colors especially for light mode I also noticed that my project can’t be cloned on windows because windows doesn’t allow * in filenames. I updated the filenames but old commits still can’t be checked out easily.
Ships:
I built a parser for mathematical expressions that turns math input into an abstract syntax tree. From there, you can do things like simplifying or differentiating the expression. Learning about parsing methods was genuinely interesting — once I understood the theory behind lexing and parsing, implementation was fairly straightforward. After getting the basic parsing working, I wanted to build a simple web interface for it. Looking back, the interface ended up taking a lot more time than I expected. During this project I learned a lot about compiler design and language theory as well as web development and application deployment. All in all I am quite happy with the result....
|
1793573629.9558015
|
1793660029.9558015
|
|
3309
|
master_calisthenics by @Mithil_Bhansali | Stardanc master_calisthenics by @Mithil_Bhansali | Stardance...
|
Mithil_Bhansali
|
0
|
4.99
|
0
|
[]
|
[{"post_id": 81697, "ts": "202 [{"post_id": 81697, "ts": "2026-10-22T03:58:42Z", "hours": 2.1292, "text": "finished"}, {"post_id": 5719, "ts": "2026-06-09T16:50:06Z", "hours": 2.3528, "text": "added a login page and connected backend datebase"}, {"post_id": 5050, "ts": "2026-06-08T18:28:17Z", "hours": 0.5064, "text": "A structured calisthenics learning platform that organizes bodyweight skills into clear progression paths from beginner to advanced movements. It breaks down each skill in order of difficulty and shows what must be learned before progressing to more complex exercises. Every skill includes detailed tutorials with step-by-step instructions, prerequisites, common mistakes, and training guidance to support proper development. The platform also includes training guides, beginner roadmaps, terminology explanations, and structured workout information to help users understand how to train effectively and consistently. The focus is on making calisthenics progression logical, accessible, and easy to follow by turning all skills into a connected learning system."}]...
|
Title: master_calisthenics by @Mithil_Bhansali | S Title: master_calisthenics by @Mithil_Bhansali | Stardance
Devlogs:
A structured calisthenics learning platform that organizes bodyweight skills into clear progression paths from beginner to advanced movements. It breaks down each skill in order of difficulty and shows what must be learned before progressing to more complex exercises. Every skill includes detailed tutorials with step-by-step instructions, prerequisites, common mistakes, and training guidance to support proper development. The platform also includes training guides, beginner roadmaps, terminology explanations, and structured workout information to help users understand how to train effectively and consistently. The focus is on making calisthenics progression logical, accessible, and easy to follow by turning all skills into a connected learning system.
added a login page and connected backend datebase
finished...
|
1793166521.5417156
|
1793771321.5417156
|