|
25673
|
Observatory by @Gerafftes | Stardance
|
Gerafftes
|
0
|
264.57
|
0
|
[]
|
[{"post_id": 80706, "ts": "202 [{"post_id": 80706, "ts": "2026-10-18T15:55:28Z", "hours": 10.1042, "text": "DEVLOG #42 RX3 and RX4 have passed their individual checks on the latest firmware. A complete OTA update, the LED pattern test and ten minutes of stability monitoring each, with no errors recorded. The false SOS warning on RX1 is also fixed and verified on the board now. I corrected concurrent access in the shared UDP sender and transport statistics, too. Those are real software fixes, but I still can’t claim they explain the original RX3 heap corruption or watchdog resets. I also improved CAD profile handling. Profiles can use a separate store, the UI shows which revision is loaded, and refreshing no longer overwrites unsaved edits or brings back an older saved version. The rollout isn’t finished, though. The next RX1 update stopped because its device identity couldn’t be confirmed, so RX2’s update to this latest version hasn’t started either. Next: resolve that binding, finish updating RX1 and RX2, then move on to the actual two-way peer comparison. Tracking acceptance is still open."}, {"post_id": 80452, "ts": "2026-10-17T17:48:17Z", "hours": 9.9825, "text": "DEVLOG #41 RX1 finally passed a full three-minute TX1→RX1 test. 6,407 qualified CSI frames, around 35.6 per second, and all 173 measurement windows passed. The firmware had been rejecting our setup because TX1 is also the Wi-Fi access point. That’s corrected and installed now. SOS is the warning for missing or stale usable CSI from TX1. It doesn’t automatically mean the board is broken. Ironically, the warning itself had a bug, RX1 reported stale data even though a matching frame had arrived just 8.7 milliseconds earlier. A timing race between the LED task and CSI reception caused the false alarm. The fix is built and tested offline, but isn’t installed yet. Host startup and recording also work now. RX2 is still a problem, though: its upload timed out while CSI kept arriving, and the cause isn’t confirmed. Next: install and verify the LED fix on RX1 before continuing with the other receivers. The actual two-way peer comparison and tracking acceptance are still open."}, {"post_id": 80208, "ts": "2026-10-16T19:06:18Z", "hours": 10.01, "text": "DEVLOG #40 I cut the recording footprint from 4.54 to 2.67 GB in the full synthetic test, about 41% less. The saving comes mainly from removing duplicate exports, not throwing away raw data or evidence. I also corrected timing and CSI rate-limit bugs offline, plus a cleanup issue that could prevent the recorder from stopping its own processes when disk space got tight. The frustrating part is that the peer comparison still hasn’t recorded anything. One attempt stopped on the timing bug, after that was fixed, the next hit a missing signing key during host startup. No peer firmware was uploaded and no capture started in either attempt. Next: fix host startup and prepare a separate 35-minute pilot. The actual peer comparison and tracking acceptance are still open."}, {"post_id": 79987, "ts": "2026-10-15T19:13:06Z", "hours": 10.2558, "text": "DEVLOG #39 All four receivers finally made it through a full 30-minute CSI run together. RX1, RX3 and RX4 are now on C1, while RX2 stays on C. Each delivered around 17–20 matching frames per second, and 99.61% of the shared measurement windows passed the CSI checks. The RX1↔RX4 peer firmware and recording workflow are also implemented and tested offline now. The actual radio comparison hasn’t happened yet, so I still don’t know whether those extra links will improve positioning. One annoying bug kept rejecting good data after a 128→64→128 format change. That’s fixed in the offline analysis, along with separate format rules for TX1 and peer links and a recorder completion check. I also added RX and radar exports that keep raw data, timing and recording boundaries together. That path works in offline tests; it isn’t a new live hardware result. Next: check both mmWave sensors individually and then together at known points. The shared CSI run is a milestone, but tracking and full-system acceptance are still open."}, {"post_id": 79381, "ts": "2026-10-13T18:55:19Z", "hours": 9.4147, "text": "DEVLOG #38 RX2 is finally delivering a lot more matching CSI data. After installing the new firmware, the rate went from about 1.9 to 31.9 frames per second. A longer, half-hour capture averaged around 30. The firmware now fixes Wi-Fi bandwidth at 20 MHz and guards against invalid CSI callbacks. One annoying catch: the long capture only recorded RX2 because some device endpoints were outdated or mixed up. I’ve prepared a stricter preflight so an incomplete group can’t silently become a four-receiver test again. I also corrected the offline window analysis. A valid frame with a different format no longer ruins an entire otherwise usable window. The UI code now separates format exclusions from unexplained sequence gaps instead of calling everything “loss”. The host fixes are tested locally, but aren’t active on the running server yet. Next: complete a proper simultaneous four-RX capture, then implement the RX1 <-> RX4 peer profile for testing. Tracking and full-system acceptance are still open."}, {"post_id": 78806, "ts": "2026-10-11T17:42:21Z", "hours": 9.8042, "text": "DEVLOG #37 I narrowed down the RX2 and mmWave2 issues from the failed run. Still no hardware fix, but the picture is getting clearer. The surprising part is that RX2 was still sending valid CSI packets during its apparent dropout. They just weren’t the 128-subcarrier frames the current evaluation needs. mmWave2, on the other hand, really did have gaps in packets reaching the host. I’m looking into its send-and-acknowledgement path, but haven’t proven the cause yet. I also found a parser mistake. A supposedly damaged RX packet was actually a valid warning message. That’s corrected in the isolated diagnostic tools, which now also distinguish device timeouts from requests the collector skipped or cancelled. New diagnostic firmware candidates for TX1, RX2 and mmWave2 are built locally to help trace where things stop moving. They aren’t installed yet, and the TX send errors are still unresolved. The UI is less misleading now, too: an ESP being reachable doesn’t mean radar data is arriving, and old readings no longer keep disconnected devices looking active. Next: review the diagnostic candidates, then use a short, controlled hardware run to investigate the remaining errors. The last full acceptance is still a FAIL."}, {"post_id": 78171, "ts": "2026-10-09T21:04:22Z", "hours": 9.5261, "text": "DEVLOG #36 The first full TX1 acceptance run is done now and it failed, but at least I finally have a much clearer picture of what is still going wrong… The common setup passed: all seven expected participants were visible, and 22 complete snapshots kept the shared basis valid for more than 20 seconds. Then Scope A ran its three 120-second windows. All three failed. There were 14 new TX send errors, and the diagnostic counters placed them in the wifi_handoff ENOMEM stage. That tells me where the error was recorded, but not yet why it happens or whether it is fixed. MMWAVE2 also became stale in parts of the run, and several RX requests were missing, so none of the historical comparisons could count as a valid PASS. Scope B stopped itself at the safety gate when the source binding became inconsistent and RX2 was already 5.044 seconds old. This is frustrating, but the guard did exactly what it was supposed to do, it refused to turn an incomplete 120-second window into a result. Next: decide how to continue the ENOMEM and source-binding issues before starting another acceptance run."}, {"post_id": 77864, "ts": "2026-10-08T16:16:06Z", "hours": 10.1556, "text": "DEVLOG #35 I fixed two concrete TX1 firmware bugs. An authentication check that ran too late and an HTTP task with too little stack space. The status endpoint could lose the request headers before checking authorization. I moved that check ahead of the response. I also increased the HTTP task’s stack from 4 KB to 8 KB after confirming that some call paths could exceed the old limit. Two independent builds matched byte for byte. After taking fresh backups, I installed the candidate and verified the complete 16 MiB flash against the expected image. That part passed. The UDP/ENOMEM errors are not yet proven fixed. Next: investigate the reset path, complete a clean controlled boot, then check the matching server setup, authentication, all participants, and the measurement windows."}, {"post_id": 77133, "ts": "2026-10-05T19:02:41Z", "hours": 10.1275, "text": "DEVLOG #34 The TX1 migration is now 100% verified , but the project is still only around ≈ 70% complete. The third and final boot attempt did not give me the clean result I was hoping for. Recovery happened within the allowed time, but UART0 showed two app starts. After the first start, an RTC_SW_CPU_RST appeared and the app started again. It eventually reached BOOT_OK , but because of the duplicate start I still cannot accept the boot trace or move on to server activation and measurements. I am currently documenting the exact restart sequence and trying to figure out what caused it. I also put together a source collection about Wi-Fi sensing and RF-based person detection. GitHub The separate mmWave freshness test did not reproduce the old MMWAVE2 delay problem, but that does not prove it is fixed. Next: get one clean TX1 boot, then activate the server and start collecting real measurements."}, {"post_id": 76667, "ts": "2026-10-04T09:40:44Z", "hours": 10.0744, "text": "DEVLOG #33 The TX1 finally made it all the way to BOOT_OK . After the CHECK_COUNTRY problem from the last update, the new candidate passed the Country20/Power44 and Wi-Fi checks, booted into test mode, and passed the local TX/RX4 checks. I also confirmed the amber LED and both mmWave transport paths. The previous candidate had stopped because one sampling gap grew to 10.2 seconds. I traced that back to the timing bookkeeping and changed the sampler to schedule from the last real sample completion. The corrected run stayed within the sampling limits. That is a real improvement, but it is not the final acceptance yet. The full coverage result is still blocked by the clock-binding requirement, and the radar window only showed no_target , not a position result. I also switched to the new diagnostic server in a controlled run. It stayed ready and a separate 61-second capture passed the coverage gate, but the active CSI position setup is still missing, so this does not count as a complete TX-7B or system pass. The CAD UI got a pretty big upgrade too. MMWAVE1 and MMWAVE2 can now be edited as separate sensors with their own colors, 6 m fields of view, direction arrows, and yaw handles. I added a button to aim them at each other, plus a wall-angle tool that draws the real beam/wall intersection and lets me set the angle directly. Marker labels also move out of the way automatically, and the snap setting survives a refresh. Next: fix the remaining coverage and clock evidence, activate the sealed CAD/CSI setup, and complete the full TX-7B validation."}, {"post_id": 76233, "ts": "2026-10-02T19:45:23Z", "hours": 10.1567, "text": "DEVLOG #32 I still do not really have a final result to show, but it has been another ten hours, so I did not want to skip the devlog. The latest TX1 boot attempt did at least narrow things down. The new firmware now passes the Wi-Fi channel checks: channel 6, HT40 with the secondary channel below, AP-only mode, and the other radio checks all matched the expected profile. It then stops at CHECK_COUNTRY , before reaching BOOT_OK . The TX1 migration is therefore still not accepted, but the failure is much more specific now. The confusing part is that the Wi-Fi power values do not line up cleanly. The country structure reports a different power field than expected, while the separate power API returns the expected value. This may be an SDK representation or comparison issue rather than a real transmit-power problem, but there is not enough evidence to call it fixed yet. I also corrected related checks for the country bytes, SSID representation, and status getters, and prepared another reproducible candidate offline. With the move to Python 3.15, I also added the new lazy-import implementation. The official Python documentation describes the new syntax. Eligible imports now use explicit lazy import and lazy from syntax, with a local verifier to keep the behavior consistent. After the failed candidate boot, I restored the original 16 MiB image and verified the return path. The historical firmware is running again, and RX4 plus both mmWave sensors are sending data. Next: resolve the country/power comparison, then attempt the candidate boot again under the existing safety gates."}, {"post_id": 74540, "ts": "2026-09-27T16:25:38Z", "hours": 9.8731, "text": "DEVLOG #31 The mmWave2 connection problem is finally understood. It was caused by a reproducible dependency on the WLAN transmit power: at around 19.5 dBm, the ESP kept running and received probe requests, but its test AP could not be found and connections failed. At 10 dBm, the AP worked immediately, csi-test connected again, and 360/360 pings succeeded without a disconnect. Raising the limit reproduced the issue, confirming the dependency. Both mmWave sensors now work reliably. The TX1 migration is also complete. I verified the candidate firmware and baseline, created two identical 16 MiB backups. The new app was written to app1 together with the NVS merge and OTA selection. A complete readback of all 16,777,216 bytes matched the expected flash image exactly. Next: Boot the candidate under the existing safety gates, check that TX1 comes up properly, and run the full comparison."}, {"post_id": 74078, "ts": "2026-09-26T17:07:07Z", "hours": 9.0633, "text": "DEVLOG #30 The replacement ESP for mmWave2 is now soldered and mounted on the previously working breadboard setup. The connection problem has not disappeared, however WiFi still fails, so I uploaded a minimal WiFi test script to isolate the radio and network path before testing the radar or UDP transport. The mmWave firmware now distinguishes MMWAVE1 and MMWAVE2 with separate build and upload paths, uses 55010 as the default UDP port, and logs the WiFi disconnect reason. These changes are prepared locally; the test image is not yet a confirmed fix, and the complete mmWave2 path is still unvalidated. In parallel, the TX1 replacement reached a stronger local checkpoint. Reproducible builds from fresh and isolated source copies are byte-identical, and the local test suite passed. The 7A TX1/RX4 baseline still produced no usable measurement data, so the migration remains blocked and 7B is NO-GO . Next: resolve the WiFi connection on the replacement ESP, verify mmWave2 communication, and continue with two-sensor validation and RX3 calibration."}, {"post_id": 73272, "ts": "2026-09-24T18:35:00Z", "hours": 7.6919, "text": "DEVLOG #29 The local RX work has expanded, but the two-sensor setup is currently blocked by a connection problem with mmWave2. RX-04 to RX-12 add bounded capture and queue handling, stale-frame rejection, corrected CSI parsing, clearer UDP/server counters, and timing and synchronization metadata. The firmware host tests, standard and raw ESP32-S3 builds, and targeted server checks pass. These are still software and build results. No live RX measurement has yet proven lower frame loss or data age. :( The 3D-printed part now fits. While investigating the mmWave2 connection, I tried to desolder its ESP, but it could not be removed cleanly. Since the connection problem is not resolved, I ordered a replacement ESP, a new mmWave sensor, and an FH/Fenghua 1206X106K160NT SMD component. The exact cause is still open, and the replacement parts have not been installed or tested yet. The existing TX1 replacement also remains locally tested but unflashed. Next: rebuild mmWave2 with the replacement parts, identify the connection fault, validate both sensor paths, and continue with RX3 calibration."}, {"post_id": 72260, "ts": "2026-09-22T15:24:39Z", "hours": 10.1567, "text": "DEVLOG #28 I prepared and locally verified an ESP-IDF replacement candidate for TX1. The firmware builds successfully, and the host-side checks for packet handling, scheduling, boot/OTA variants, and negative compile guards pass. This is still a software-only result. Nothing has been flashed, and TX1 has not been validated on hardware. Before replacing the existing TX1, the old TX1/RX4 baseline and network pre-check must still be completed. I also tightened the RX data path. Incoming frames are now checked for valid input and correct TX binding before passing through one jitter-tolerant 20 ms admission gate. Invalid or foreign frames no longer consume the timing budget. Callback, queue, UDP, and server-side counters are tracked separately, making it possible to see where loss or delay occurs. The deterministic fixtures and local ESP32-S3 build pass, but no live RX measurement has yet shown an actual reduction in frame loss or data age. The new 3D print exposed a mechanical error: it is approximately 1 mm too small and does not fit. It needs to be adjusted and printed again. Next: complete the read-only TX1/RX4 baseline, adjust and reprint the part, then continue with RX3 calibration and validation of both mmWave sensor paths."}, {"post_id": 71302, "ts": "2026-09-20T16:26:13Z", "hours": 9.9056, "text": "DEVLOG #27 I soldered a second PCB from revision 3, making the hardware for two mmWave sensors available. The software now keeps MMWAVE1 and MMWAVE2 separate through stable node identities and independent sequence, transform, and calibration state. The mmWave transport also crossed an important milestone. Because best-effort UDP was not enough, firmware 0.1.6 now uses ACK-based retransmission. In a controlled 60-second comparison, sequence loss reached 0.00% and the radar_sequence_loss_free gate passed, compared with 0.70% loss and 84 full ACK timeouts on firmware 0.1.5. The Tauri desktop shell has been replaced in the active build by a loopback control helper for discovery, provisioning, flashing, OTA, and WASM. I also created a new 3D-print file, which is currently being printed; the mechanical result is not finished yet. Next: validate both sensor paths together, resolve the RX3 Phase 1 offset, and repeat the full radar preflight."}, {"post_id": 70187, "ts": "2026-09-18T17:19:24Z", "hours": 5.8228, "text": "DEVLOG #26 I have completed, soldered, and tested the third and hopefully final PCB revision. Everything works, but the ground plane made soldering significantly more difficult than expected. Even with thermal reliefs around the solder pads, the plane acted like a heat sink, dissipating heat across the entire board. The shift to a browser-centric approach is progressing: the Tauri desktop app and its associated release pipeline are being removed, while hardware control is being moved to a standalone “loopback crate.” This crate handles tasks such as device discovery, serial access, provisioning, flashing, OTA updates, and WASM integration. This work is currently ongoing. The server now protects the /api/field and /ws/field endpoints using Bearer authentication and keeps auto mode offline until real data is available. An explicit simulated source is required for simulation. mmWave transmission has been improved but still exhibits a sequence loss rate of 13.1%, causing the radar preflight to remain blocked. The causes of the remaining loss still need to be investigated, particularly regarding channel conditions, the startup process/ARP, and Wi-Fi airtime and scheduling. The calibration offset for “Phase 1” on RX3 also remains unresolved. Next steps: fixing the RX3 offset, completing the migration to the browser/control setup, and re-running the radar preflight."}, {"post_id": 69194, "ts": "2026-09-16T15:53:57Z", "hours": 9.0253, "text": "DEVLOG #25 I measured and optimized the mmWave UDP transport, but the radar path still fails the lossless-transmission test (image 1) . The new firmware and server path use one UDP copy without artificial delay, disable Wi-Fi power saving on the mains-powered node, persist the collector target and CAD transform, and separate socket reads from processing. Reordering, sequence validation, deduplication, and rolling metrics expose failures instead of hiding them. Across three 60-second runs, unique arrivals improved by 11.2%, sequence loss fell from 20.6% to 13.1%, duplicates dropped to zero, and arrival P95 improved by 27.8%. Two copies did not reduce loss and only added duplicates, so one copy remains the default. The transport is better, but not lossless: 13.1% sequence loss still blocks the radar preflight. The 50 ms interval is not the bottleneck; LD2450 frames arrive in bursts and the bridge emits about 2.64 measurements per second, not 20 independent frames per second. Next I will investigate RSSI and channel conditions, ARP and startup behaviour, Wi-Fi retries and airtime, and packet scheduling. RX/CSI stayed offline, so this is not a full Wi-Fi validation. The server refactor from DEVLOG #24 is now integrated: routes, state, runtime, calibration, recording, model, and system responsibilities moved out of main.rs , with active, legacy, and unavailable-training contracts separated. Desktop-interface removal remains in progress. Hardware-control modules are moving to a standalone control crate, while loopback-only browser server controls with origin checks are being added. Phase 1 calibration is also getting a longer measurement window and persisted evidence. RX3 currently lands roughly two to three metres from its expected fixed point. I will not consider the calibration valid until the transform, profile binding, or target association causing this offset is understood and corrected. Next: resolve the RX3 Phase 1 offset (seen in image 2) , then repeat the full fixed-point calibration and re-verify the radar preflight."}, {"post_id": 66738, "ts": "2026-09-12T17:07:38Z", "hours": 7.1744, "text": "DEVLOG #24 I strengthened security for live-sensor operation and started aligning the Observatory UI with backend functionality that actually exists. Live WebSockets now require Bearer authentication along with strict Origin and Host checks. Browser and Python clients no longer send tokens in the URL. Regression tests cover missing, invalid, and duplicate requests as well as cross-origin access. The complete CAD geometry document is now persisted in SQLite and survives a server restart. Another issue was in the browser catalog: it listed routes that the active Rust server did not provide. I am separating active routes from legacy compatibility routes, adding the missing model-details contract, and returning unavailable or HTTP 501 when browser-triggered training is not available instead of falsely reporting that it started. Next: finish and commit the route extraction, then repeat the live mmWave preflight, including calibration."}, {"post_id": 62834, "ts": "2026-09-06T11:19:03Z", "hours": 4.7731, "text": "DEVLOG #23 The issue encountered during initial startup was a design error: the LD2450 had been mounted rotated by 180°. The UART routing itself was correct. After rotating the sensor and reflashing the ESP32-C3, everything worked again, though the physical setup doesn’t look very tidy. I designed PCB-03 based on PCB-02. The LD2450 connector and its wiring have been rotated by 180°. Everything else remains unchanged. I also added ground planes. Until the PCB arrives, the breadboard setup will continue to serve as a temporary mmWave configuration. Next steps: order PCB-03, mount the LD2450 in the marked orientation, and repeat the live radar verification. Continue using the breadboard setup until delivery."}, {"post_id": 61621, "ts": "2026-09-04T16:40:26Z", "hours": 6.7853, "text": "DEVLOG #22 I fixed the last browser security gap found in the local security review: a page on one local port can no longer reach an unauthenticated service on another local port by default. The review contained 13 entries. Entries 8 and 11, and entries 12 and 13, were duplicates, leaving 11 unique findings. The old check trusted the hostname alone, so every localhost port was accepted. I separated browser Origin validation from the existing Host /DNS-rebinding protection. WebSockets and state-changing /api/v1/* requests now require an exact scheme, host, and port. By default, only http://localhost:<http_port> , http://127.0.0.1:<http_port> , and http://[::1]:<http_port> are allowed. Repeatable --allowed-origin values or the comma-separated SENSING_ALLOWED_ORIGINS variable explicitly replace these defaults. Host-only values, wildcards, null , paths, userinfo, and invalid ports are rejected. The protection covers /ws/* and /api/v1/stream/pose on both the HTTP and dedicated WebSocket ports. CLI clients without an Origin header remain compatible. The regression test now returns 403 for an unlisted cross-port UI, while an explicitly allowlisted cross-port UI still works. All 24/24 Origin/Host tests, 471 sensing-server tests ( 1 ignored), HomeCore server/API/auth/WebSocket tests ( 18 + 18 + 6 + 5 ), and 7 Python/firmware security-boundary tests passed. Binary checks, targeted rustfmt, and git diff --check also passed. No flash or OTA action was performed. The ESP-IDF v5.4 build matrix is still inconclusive: the native ARM64 image is missing a containerd layer, while the AMD64 fallback crashes in the emulated Xtensa compiler inside MbedTLS. I therefore do not count the three firmware builds as passed. Next: Solder PCB-02 first, then mount the mmWave sensor in the corner."}, {"post_id": 58478, "ts": "2026-08-30T21:57:05Z", "hours": 2.7247, "text": "DEVLOG #21 The 65-second empty-room calibration failed before it could collect a usable baseline. The UI showed Samples 0 when I returned, so no calibration ID or context hash was created. The failure exposed a design problem in the run itself. A recoverable outside-room radar target could stop the entire measurement. I’m changing the workflow so the run always reaches its configured end and evaluates the evidence afterwards. The final report will mark it valid or invalid with concrete reasons instead of hiding the failure behind an early stop. This behavior change is planned, but not yet implemented or validated. No successful calibration, restored baseline, 10/10 acceptance, position index, guided room walk, or blind-test result is claimed. Next: implement and test the non-interrupting run plus the post-run validity report"}, {"post_id": 57699, "ts": "2026-08-29T22:49:17Z", "hours": 5.3125, "text": "DEVLOG #20 Today I finally found why the four RX streams kept disagreeing: the server was fusing packets from different transmitter moments. The old path had already reached 98,126 engine errors with a timestamp spread of about 710 ms . The first timing fix exposed the deeper problem. The server was simply taking the latest packet from each receiver, even when those packets did not belong to the same event. I replaced that with bounded per-RX queues and approximate-time matching. The existing 60 ms guard stays fail-closed, so an incoherent quartet is discarded instead of becoming a fake D6 input. The new tests cover packet loss, reboots, sequence wrap, clock jumps, queue matching, and host-time fallback. 484/485 tests passed in the sandbox,. Next: restart the server and verify a stable, error-free 25-second preflight. But for now, time to sleep."}, {"post_id": 56909, "ts": "2026-08-28T22:30:41Z", "hours": 4.6578, "text": "DEVLOG #19 I activated the new mmWave firmware and got the live 25-second preflight to pass once, but the first empty-room recording did not complete. The main work was hardening the transport: the firmware now sends redundant radar packets, while the server handles reordering, duplicates, short CSI gaps, and recent diagnostics instead of relying on cumulative counters. The UI also gained a controlled empty-room countdown. The remaining failure is intermittent: the sensor stays online and reports no local UDP send errors, but the server still recorded packets_lost=10 and packets_rejected=324 . The empty-room capture lasted only 4.8 s for radar and 5.1 s for CSI, so it is not a valid calibration reference. No calibration, training, or blind position result is claimed yet. Next: expose the exact reject reason and sequence-gap timing, fix the remaining transport problem, and repeat the complete empty-room measurement."}, {"post_id": 56202, "ts": "2026-08-27T21:07:33Z", "hours": 3.7439, "text": "DEVLOG #18 Since the LD2450 first worked, I connected TX, RX1–RX4, and Wi-Fi, positioned the sensor, sealed setup-v2 , and added a calibration preparation phase with a countdown and a minimum duration of 60 seconds . The real hardware UI is running on port 8080 ; port 3002 still shows the simulation. I started the workflow, but it currently stops at step 4, the empty-room Wi-Fi baseline , because radar packets are being lost. I improved server-side packet sorting and built a new 10 Hz firmware. The OTA update started, but the device still boots the old firmware from ota_0 at about 20.6 Hz . The sensor is online, but calibration is not ready. 63 UI tests pass; one Rust test mismatch remains. No real D6 calibration or blind validation has been completed yet. Next: activate the 10 Hz firmware, resolve the packet-loss blocker, and rerun the preflight and empty-room baseline."}, {"post_id": 55631, "ts": "2026-08-27T16:22:32Z", "hours": 3.55, "text": "DEVLOG #17 I finally verified the complete breadboard mmWave data path with the HLK-LD2450. After flashing the known firmware to a new ESP32-C3, it joined csi-test , received 192.168.4.2 , and exposed /ota/status on port 8032 . The status confirmed the expected UART mapping: GPIO20 RX, GPIO21 TX, and 256000 baud in calibration mode. The important test was a read-only UDP capture: 224 valid LD2450 datagrams in 20 seconds, followed by 222 more while the setup was powered only from the normal power supply. Every packet matched ruview.mmwave.ld2450.v1 and contained a recognized target. This proves that the breadboard wiring, UART parser, ESP Wi-Fi connection, and UDP transport work together. The reported coordinates are still sensor-frame data, not a validated room position. The permanent PCB-02 is still pending. Next I will validate the radar transform with known room marks, connect the CSI receivers, and continue with D6 calibration, training, blind tests, and the quality gates."}, {"post_id": 54003, "ts": "2026-08-24T18:57:34Z", "hours": 1.6292, "text": "DEVLOG #16 The ESP was not the problem After the original PCB failed during WLAN authentication, I redesigned the mmWave carrier as PCB-02 and isolated the ESP to find the real cause. PCB-02 replaces the too-small ESP contact pads with proper through-hole header rows, keeps the case-compatible outline, protects the antenna area, and retains the SMD capacitors. The routing and electrical checks passed, and the Gerbers are ready to order. The important experiment came next. I unsoldered the suspect ESP from the old PCB and powered it by itself. It joined csi-test , answered every ping, and returned HTTP 200 from /ota/status . A second ESP did exactly the same without any PCB attached. This was the key finding: both ESPs work outside the PCB. The earlier auth → init failure is therefore very unlikely to be a dead ESP. The likely cause is the old PCB assembly, its soldered fly-wires, power delivery, or the antenna/contact area. The LD2450 UART and radar path are still unverified. Next: as an interim solution, continue on a breadboard with one known-good ESP and the LD2450 before moving to manufactured PCB-02."}, {"post_id": 53168, "ts": "2026-08-23T16:42:54Z", "hours": 1.9047, "text": "DEVLOG #15 D4/D5/D6 evidence package I consolidated every archived D4/D5/D6 recording into one reproducible technical report and a 25-run CSV inventory. I kept historical A/G captures separate because their sample rate and guard settings do not support a direct percentage comparison. The result is clear: pooled D4 retained 88.4% still recall but produced 75.2% empty-room false presence. Historical D5 replay looked strong at 0.0% false presence and 89.3% recall, but the real D5 live run and D5-abs still-person run both collapsed to 0% recall. D5-abs therefore reduced false presence only by making still presence unusable. I also audited all five D6 raw CSI files against their sidecars. Every file is complete, has zero recorder drops, includes RX1–RX4, and uses one 2.437 GHz / 1-antenna / 64-subcarrier grid. The current empty-neutral-02 capture is a valid same-setup baseline candidate; the older setup and discovery capture remain separate. This is technical evidence, not an accuracy claim. No phase yet has independent mmWave ground truth, blind position validation, or a proven live localization path. Next I will install the heat-set thread inserts in the mmWave case and then check whether everything works as intended before deciding how to proceed."}, {"post_id": 51926, "ts": "2026-08-21T20:58:54Z", "hours": 2.4314, "text": "DEVLOG #14 Since the last devlog, I published a new Observatory Control Center and a guided calibration workflow for the D6 experiment. The setup now includes a CAD-style room editor for the TX and RX1–RX4 positions. It validates room boundaries, duplicate receiver positions, and the canonical node IDs. The continuous mmWave calibration route is now the primary workflow; the manual P01–P09 grid remains only as a legacy fallback. Experiment profiles, run phases, setup hashes, and prediction/truth artifact hashes are persisted in SQLite. The UI also makes READY , RUNNING , PASS , OFFLINE , and SOFTWARE-ONLY / UNVALIDATED states explicit, so a simulated workflow cannot be mistaken for a real sensor result. I ran 41 UI/Observatory tests and 4 targeted Rust workflow tests ; all passed. This validates the software workflow, but not the real CSI stream, LD2450 UART/UDP path, calibration data, or position accuracy. Next: connect the LD2450 to the working ESP on the breadboard, verify UART bytes and valid radar frames, and then continue with the sealed hardware workflow and real blind tests."}, {"post_id": 51771, "ts": "2026-08-21T16:41:39Z", "hours": 1.8486, "text": "DEVLOG #13 I narrowed the Wi-Fi authentication problem down to the original ESP32-C3 . A second ESP running the same firmware connected to csi-test , received an IP address, and started its HTTP server successfully. This shows that the TX, credentials, and firmware work in principle—and that the LD2450 is not causing the current Wi-Fi failure. The original ESP ( ac:a7:04:c2:71:f4 ) is now the main suspect, possibly because of its Wi-Fi hardware, power stability, flash state, or an access-point client entry. I also planned a breadboard-compatible power setup for testing without the SMD capacitors: a through-hole 100 nF ceramic capacitor and 10 µF electrolytic capacitor across 5 V and GND, placed close to the ESP and radar connections. The radar itself has not passed a UART test yet . Next, I will connect the unpowered LD2450 to the working ESP and check whether UART bytes and valid radar frames increase."}, {"post_id": 49852, "ts": "2026-08-18T20:01:28Z", "hours": 3.3072, "text": "DEVLOG #12 I built a new Observatory Control Center that guides the experiment through all ten phases—from creating and sealing the setup to calibration, blind tests, evaluation, and the final report. Run metadata, setup profiles, phase history, and artifact hashes are now stored persistently in SQLite, while the raw recordings remain separate files. The UI shows clear READY , RUNNING , PASS , OFFLINE , and UNVALIDATED states and keeps software-only demonstrations separate from real measurements. I also made continuous mmWave-guided calibration the main workflow. The manual P01–P09 capture grid remains available only as a legacy fallback. All 29 UI tests and all 4 targeted SQLite/workflow tests pass. This verifies the software workflow, but does not yet validate the real sensors or position accuracy . Next: connect the finished hardware and run the guided workflow with real data ."}, {"post_id": 48977, "ts": "2026-08-17T15:47:15Z", "hours": 3.4047, "text": "DEVLOG #11 I started assembling the reference-sensor PCB and soldered the available parts. The SMD capacitors have not arrived yet, and the ESP pads turned out to be too small for reliable soldering, so I have started connecting the ESP with wires instead. On the software side, I added diagnostics for UART bytes, valid radar frames, UDP transmissions, and errors. The server and UI now display these values and detect connection or network problems. I also tested the complete software path synthetically—from radar input through calibration, position indexing, blind-test gates, and the UI. All relevant tests passed, including 10/10 UI tests. This confirms the software path, but not the final live hardware setup. A read-only CSI check currently receives no RX packets. The last discovery did find TX and RX1–RX4 with a stable 64-subcarrier grid, although sequence gaps were around 5–6% . Next: finish the wiring, add the capacitors, and restore live CSI reception ."}, {"post_id": 46851, "ts": "2026-08-14T11:44:53Z", "hours": 1.2353, "text": "DEVLOG #10 I completed the calibration and evaluation pipeline for WiFi positioning with an HLK-LD2450 reference sensor. The new system includes: ESP32-C3 firmware with UART parsing, room coordinates, operating modes, Wi-Fi transmission, and protected configuration; persistent coordinate transformation with origin, rotation, and optional mirroring; synchronization of mmWave and RX1–RX4 CSI data within 150 ms ; a 65-second empty-room reference; automatic room coverage with nine reachable zones ( P01–P09 ) and six training blocks per zone; a position index that uses only CSI after calibration ; blind evaluation with separated WiFi predictions and mmWave reference data; fixed quality thresholds with automatic acceptance or rejection; and a guided German calibration assistant in the UI. The PCB has also arrived. I am checking it carefully before soldering and starting the first complete hardware tests. Next: verify the PCB, solder the components, and test the full system ."}, {"post_id": 46000, "ts": "2026-08-12T21:00:12Z", "hours": 1.3247, "text": "DEVLOG #09 I 3D-printed the case and a PCB mockup to test the fit. The IKEA Skådis mount and the retaining posts were slightly too large, possibly because supports were placed in the wrong areas. I have already updated the 3D model and will print the revised version tomorrow."}, {"post_id": 45443, "ts": "2026-08-11T21:51:23Z", "hours": 0.6469, "text": "DEVLOG #08 I finished the firmware and flashed it onto the ESP32-C3 SuperMini for the mmWave reference sensor. It uses the correct UART pins ( GPIO20 RX , GPIO21 TX , 256000 baud ), parses all three LD2450 targets using the official protocol , and sends timestamped UDP JSON data. It also separates calibration and reference recordings, supports protected A/B OTA, detects ambiguous multi-person measurements, and allows configurable radar placement. The firmware is ready, but the final PCB still needs to arrive. I then need to solder it before any complete hardware testing can begin. I will also finish the IKEA-board mount, print the case, and check the PCB fit—especially the retaining posts . Next: receive and solder the PCB, print the case, and test everything together ."}, {"post_id": 45318, "ts": "2026-08-11T18:12:17Z", "hours": 1.1956, "text": "DEVLOG #07 I added small retaining posts to hold the PCB securely inside the mmWave sensor case. I also designed a holder for mounting the enclosure to an IKEA board. These details should keep both the electronics and the finished case in place, but they still need to be printed and tested for fit. Next: print the parts and check the tolerances ."}, {"post_id": 45185, "ts": "2026-08-11T14:38:53Z", "hours": 1.9669, "text": "DEVLOG #06 I continued redesigning the mmWave reference sensor case and replaced the honeycomb pattern with cleaner parallel openings. I also refined the inside of the enclosure by adding two posts and a rectangular internal feature. The case now has a much cleaner shape, but it is still a CAD design and has not been printed or tested yet . Next: check the component fit and prepare the case for printing ."}, {"post_id": 44901, "ts": "2026-08-10T23:16:59Z", "hours": 1.9811, "text": "DEVLOG #05 Redesigning the mmWave reference sensor case Today Redesigned the 3D-printed enclosure for the mmWave reference sensor. Finish the enclosure and prepare it for printing. Current Challenge I am currently working on the honeycomb pattern. The new case is taking shape, but the pattern still needs to be fixed before the design is complete. Status: Redesigned , NOT FINISHED , currently focused on the pattern ."}, {"post_id": 44167, "ts": "2026-08-09T18:58:20Z", "hours": 2.1736, "text": "DEVLOG #04 D6 setup and calibration Today Sealed the 1TX/4RX setup and identified the TX without flashing. Passed the 25-second preflight and recorded 65 seconds of empty-room data. UI Fix Camera rotation was replaced with a display-only X-axis mirror: x_display = room_length - x Next Record training data at P01–P09 Build the position fingerprint index Run blind tests and evaluate both quality thresholds Complete all nine training positions. Build the fingerprint model. Validate before enabling live positioning. Status: Connected , UNCALIBRATED , setup sealed and unchanged"}, {"post_id": 43483, "ts": "2026-08-08T19:35:11Z", "hours": 1.7147, "text": "DEVLOG #03 Today I finished the 3D-printed case for the reference sensor (mmWave). Its purpose is to measure how accurate the WiFi CSI-based positioning actually is."}, {"post_id": 42271, "ts": "2026-08-06T22:02:29Z", "hours": 0.5714, "text": "DEVLOG #02 So, I had a big issue today. I finished my PCB after five hours of work and recorded the entire process as a timelapse in Lookout . Then I accidentally clicked Discard . Fortunately, I was able to recover the video on my Mac, including all of its metadata. Getting the logged time restored now depends on the incredible team at Hack Club/Laps . I have already asked for help on Slack and sent an email. The PCB Is Finished Despite the timelapse issue, the PCB shown below is finished and already ordered . Its purpose is to provide reference data for evaluating how accurately the Wi-Fi-based tracking system works. The board includes: an ESP32-C3 SuperMini ; and an mmWave radar sensor."}, {"post_id": 40866, "ts": "2026-08-04T17:44:34Z", "hours": 27.3636, "text": "DEVLOG #01 Hi, long time no see. Over the past few weeks, I have been developing two new approaches to presence detection. The main issue was that the system could not reliably distinguish between an empty room and a room with me standing inside :(. To solve this, I first developed D5 and then D6 . D5 is already available on GitHub . D6 is not available yet because it is still under development and has not been fully validated with real measurements and blind tests. D5 — Presence Detection D5 was designed to determine whether a room is empty or occupied. It compares current CSI measurements with a previously recorded empty-room reference. However, D5 mainly evaluated changes in one direction. In practice, a person’s presence can cause CSI values to either increase or decrease, depending on the receiver and propagation path. As a result, D5 behaved more like a motion detector and could miss a person who remained still. While it significantly improved presence detection, it was not robust enough for reliable real-world use. D6 — Presence Detection and Position Classification D6 builds on D5 by evaluating deviations from the empty-room reference in both directions , making it much more effective at detecting people who remain stationary. Once a person has been detected, D6 attempts to classify their position. Instead of calculating arbitrary coordinates, it identifies one of nine predefined locations ( P01–P09 ) that were previously trained using CSI recordings. A position is only reported if: the hardware setup is valid and sealed; all receivers provide fresh and valid CSI data; the correct transmitter has been verified; a person has been detected; a valid position index is available; and the classification result is sufficiently confident. If any of these conditions are not met, D6 deliberately reports no position instead of inventing one. The software pipeline is largely complete, but the system still needs to be validated using a new sealed setup, fresh training recordings, and independent blind tests before D6 can be released on GitHub. New Interface I also redesigned the standard RuView interface as a clean, white, Samaritan-inspired UI based on the AI system from the TV series Person of Interest ."}]...
|
Title: Observatory by @Gerafftes | Stardance
Devl Title: Observatory by @Gerafftes | Stardance
Devlogs:
DEVLOG #01 Hi, long time no see. Over the past few weeks, I have been developing two new approaches to presence detection. The main issue was that the system could not reliably distinguish between an empty room and a room with me standing inside :(. To solve this, I first developed D5 and then D6 . D5 is already available on GitHub . D6 is not available yet because it is still under development and has not been fully validated with real measurements and blind tests. D5 — Presence Detection D5 was designed to determine whether a room is empty or occupied. It compares current CSI measurements with a previously recorded empty-room reference. However, D5 mainly evaluated changes in one direction. In practice, a person’s presence can cause CSI values to either increase or decrease, depending on the receiver and propagation path. As a result, D5 behaved more like a motion detector and could miss a person who remained still. While it significantly improved presence detection, it was not robust enough for reliable real-world use. D6 — Presence Detection and Position Classification D6 builds on D5 by evaluating deviations from the empty-room reference in both directions , making it much more effective at detecting people who remain stationary. Once a person has been detected, D6 attempts to classify their position. Instead of calculating arbitrary coordinates, it identifies one of nine predefined locations ( P01–P09 ) that were previously trained using CSI recordings. A position is only reported if: the hardware setup is valid and sealed; all receivers provide fresh and valid CSI data; the correct transmitter has been verified; a person has been detected; a valid position index is available; and the classification result is sufficiently confident. If any of these conditions are not met, D6 deliberately reports no position instead of inventing one. The software pipeline is largely complete, but the system still needs to be validated using a new sealed setup, fresh training recordings, and independent blind tests before D6 can be released on GitHub. New Interface I also redesigned the standard RuView interface as a clean, white, Samaritan-inspired UI based on the AI system from the TV series Person of Interest .
DEVLOG #02 So, I had a big issue today. I finished my PCB after five hours of work and recorded the entire process as a timelapse in Lookout . Then I accidentally clicked Discard . Fortunately, I was able to recover the video on my Mac, including all of its metadata. Getting the logged time restored now depends on the incredible team at Hack Club/Laps . I have already asked for help on Slack and sent an email. The PCB Is Finished Despite the timelapse issue, the PCB shown below is finished and already ordered . Its purpose is to provide reference data for evaluating how accurately the Wi-Fi-based tracking system works. The board includes: an ESP32-C3 SuperMini ; and an mmWave radar sensor.
DEVLOG #03 Today I finished the 3D-printed case for the reference sensor (mmWave). Its purpose is to measure how accurate the WiFi CSI-based positioning actually is.
DEVLOG #04 D6 setup and calibration Today Sealed the 1TX/4RX setup and identified the TX without flashing. Passed the 25-second preflight and recorded 65 seconds of empty-room data. UI Fix Camera rotation was replaced with a display-only X-axis mirror: x_display = room_length - x Next Record training data at P01–P09 Build the position fingerprint index Run blind tests and evaluate both quality thresholds Complete all nine training positions. Build the fingerprint model. Validate before enabling live positioning. Status: Connected , UNCALIBRATED , setup sealed and unchanged
DEVLOG #05 Redesigning the mmWave reference sensor case Today Redesigned the 3D-printed enclosure for the mmWave reference sensor. Finish the enclosure and prepare it for printing. Current Challenge I am currently working on the honeycomb pattern. The new case is taking shape, but the pattern still needs to be fixed before the design is complete. Status: Redesigned , NOT FINISHED , currently focused on the pattern .
DEVLOG #06 I continued redesigning the mmWave reference sensor case and replaced the honeycomb pattern with cleaner parallel openings. I also refined the inside of the enclosure by adding two posts and a rectangular internal feature. The case now has a much cleaner shape, but it is still a CAD design and has not been printed or tested yet . Next: check the component fit and prepare the case for printing .
DEVLOG #07 I added small retaining posts to hold the PCB securely inside the mmWave sensor case. I also designed a holder for mounting the enclosure to an IKEA board. These details should keep both the electronics and the finished case in place, but they still need to be printed and tested for fit. Next: print the parts and check the tolerances .
DEVLOG #08 I finished the firmware and flashed it onto the ESP32-C3 SuperMini for the mmWave reference sensor. It uses the correct UART pins ( GPIO20 RX , GPIO21 TX , 256000 baud ), parses all three LD2450 targets using the official protocol , and sends timestamped UDP JSON data. It also separates calibration and reference recordings, supports protected A/B OTA, detects ambiguous multi-person measurements, and allows configurable radar placement. The firmware is ready, but the final PCB still needs to arrive. I then need to solder it before any complete hardware testing can begin. I will also finish the IKEA-board mount, print the case, and check the PCB fit—especially the retaining posts . Next: receive and solder the PCB, print the case, and test everything together .
DEVLOG #09 I 3D-printed the case and a PCB mockup to test the fit. The IKEA Skådis mount and the retaining posts were slightly too large, possibly because supports were placed in the wrong areas. I have already updated the 3D model and will print the revised version tomorrow.
DEVLOG #10 I completed the calibration and evaluation pipeline for WiFi positioning with an HLK-LD2450 reference sensor. The new system includes: ESP32-C3 firmware with UART parsing, room coordinates, operating modes, Wi-Fi transmission, and protected configuration; persistent coordinate transformation with origin, rotation, and optional mirroring; synchronization of mmWave and RX1–RX4 CSI data within 150 ms ; a 65-second empty-room reference; automatic room coverage with nine reachable zones ( P01–P09 ) and six training blocks per zone; a position index that uses only CSI after calibration ; blind evaluation with separated WiFi predictions and mmWave reference data; fixed quality thresholds with automatic acceptance or rejection; and a guided German calibration assistant in the UI. The PCB has also arrived. I am checking it carefully before soldering and starting the first complete hardware tests. Next: verify the PCB, solder the components, and test the full system .
DEVLOG #11 I started assembling the reference-sensor PCB and soldered the available parts. The SMD capacitors have not arrived yet, and the ESP pads turned out to be too small for reliable soldering, so I have started connecting the ESP with wires instead. On the software side, I added diagnostics for UART bytes, valid radar frames, UDP transmissions, and errors. The server and UI now display these values and detect connection or network problems. I also tested the complete software path synthetically—from radar input through calibration, position indexing, blind-test gates, and the UI. All relevant tests passed, including 10/10 UI tests. This confirms the software path, but not the final live hardware setup. A read-only CSI check currently receives no RX packets. The last discovery did find TX and RX1–RX4 with a stable 64-subcarrier grid, although sequence gaps were around 5–6% . Next: finish the wiring, add the capacitors, and restore live CSI reception .
DEVLOG #12 I built a new Observatory Control Center that guides the experiment through all ten phases—from creating and sealing the setup to calibration, blind tests, evaluation, and the final report. Run metadata, setup profiles, phase history, and artifact hashes are now stored persistently in SQLite, while the raw recordings remain separate files. The UI shows clear READY , RUNNING , PASS , OFFLINE , and UNVALIDATED states and keeps software-only demonstrations separate from real measurements. I also made continuous mmWave-guided calibration the main workflow. The manual P01–P09 capture grid remains available only as a legacy fallback. All 29 UI tests and all 4 targeted SQLite/workflow tests pass. This verifies the software workflow, but does not yet validate the real sensors or position accuracy . Next: connect the finished hardware and run the guided workflow with real data .
DEVLOG #13 I narrowed the Wi-Fi authentication problem down to the original ESP32-C3 . A second ESP running the same firmware connected to csi-test , received an IP address, and started its HTTP server successfully. This shows that the TX, credentials, and firmware work in principle—and that the LD2450 is not causing the current Wi-Fi failure. The original ESP ( ac:a7:04:c2:71:f4 ) is now the main suspect, possibly because of its Wi-Fi hardware, power stability, flash state, or an access-point client entry. I also planned a breadboard-compatible power setup for testing without the SMD capacitors: a through-hole 100 nF ceramic capacitor and 10 µF electrolytic capacitor across 5 V and GND, placed close to the ESP and radar connections. The radar itself has not passed a UART test yet . Next, I will connect the unpowered LD2450 to the working ESP and check whether UART bytes and valid radar frames increase.
DEVLOG #14 Since the last devlog, I published a new Observatory Control Center and a guided calibration workflow for the D6 experiment. The setup now includes a CAD-style room editor for the TX and RX1–RX4 positions. It validates room boundaries, duplicate receiver positions, and the canonical node IDs. The continuous mmWave calibration route is now the primary workflow; the manual P01–P09 grid remains only as a legacy fallback. Experiment profiles, run phases, setup hashes, and prediction/truth artifact hashes are persisted in SQLite. The UI also makes READY , RUNNING , PASS , OFFLINE , and SOFTWARE-ONLY / UNVALIDATED states explicit, so a simulated workflow cannot be mistaken for a real sensor result. I ran 41 UI/Observatory tests and 4 targeted Rust workflow tests ; all passed. This validates the software workflow, but not the real CSI stream, LD2450 UART/UDP path, calibration data, or position accuracy. Next: connect the LD2450 to the working ESP on the breadboard, verify UART bytes and valid radar frames, and then continue with the sealed hardware workflow and real blind tests.
DEVLOG #15 D4/D5/D6 evidence package I consolidated every archived D4/D5/D6 recording into one reproducible technical report and a 25-run CSV inventory. I kept historical A/G captures separate because their sample rate and guard settings do not support a direct percentage comparison. The result is clear: pooled D4 retained 88.4% still recall but produced 75.2% empty-room false presence. Historical D5 replay looked strong at 0.0% false presence and 89.3% recall, but the real D5 live run and D5-abs still-person run both collapsed to 0% recall. D5-abs therefore reduced false presence only by making still presence unusable. I also audited all five D6 raw CSI files against their sidecars. Every file is complete, has zero recorder drops, includes RX1–RX4, and uses one 2.437 GHz / 1-antenna / 64-subcarrier grid. The current empty-neutral-02 capture is a valid same-setup baseline candidate; the older setup and discovery capture remain separate. This is technical evidence, not an accuracy claim. No phase yet has independent mmWave ground truth, blind position validation, or a proven live localization path. Next I will install the heat-set thread inserts in the mmWave case and then check whether everything works as intended before deciding how to proceed.
DEVLOG #16 The ESP was not the problem After the original PCB failed during WLAN authentication, I redesigned the mmWave carrier as PCB-02 and isolated the ESP to find the real cause. PCB-02 replaces the too-small ESP contact pads with proper through-hole header rows, keeps the case-compatible outline, protects the antenna area, and retains the SMD capacitors. The routing and electrical checks passed, and the Gerbers are ready to order. The important experiment came next. I unsoldered the suspect ESP from the old PCB and powered it by itself. It joined csi-test , answered every ping, and returned HTTP 200 from /ota/status . A second ESP did exactly the same without any PCB attached. This was the key finding: both ESPs work outside the PCB. The earlier auth → init failure is therefore very unlikely to be a dead ESP. The likely cause is the old PCB assembly, its soldered fly-wires, power delivery, or the antenna/contact area. The LD2450 UART and radar path are still unverified. Next: as an interim solution, continue on a breadboard with one known-good ESP and the LD2450 before moving to manufactured PCB-02.
DEVLOG #17 I finally verified the complete breadboard mmWave data path with the HLK-LD2450. After flashing the known firmware to a new ESP32-C3, it joined csi-test , received 192.168.4.2 , and exposed /ota/status on port 8032 . The status confirmed the expected UART mapping: GPIO20 RX, GPIO21 TX, and 256000 baud in calibration mode. The important test was a read-only UDP capture: 224 valid LD2450 datagrams in 20 seconds, followed by 222 more while the setup was powered only from the normal power supply. Every packet matched ruview.mmwave.ld2450.v1 and contained a recognized target. This proves that the breadboard wiring, UART parser, ESP Wi-Fi connection, and UDP transport work together. The reported coordinates are still sensor-frame data, not a validated room position. The permanent PCB-02 is still pending. Next I will validate the radar transform with known room marks, connect the CSI receivers, and continue with D6 calibration, training, blind tests, and the quality gates.
DEVLOG #18 Since the LD2450 first worked, I connected TX, RX1–RX4, and Wi-Fi, positioned the sensor, sealed setup-v2 , and added a calibration preparation phase with a countdown and a minimum duration of 60 seconds . The real hardware UI is running on port 8080 ; port 3002 still shows the simulation. I started the workflow, but it currently stops at step 4, the empty-room Wi-Fi baseline , because radar packets are being lost. I improved server-side packet sorting and built a new 10 Hz firmware. The OTA update started, but the device still boots the old firmware from ota_0 at about 20.6 Hz . The sensor is online, but calibration is not ready. 63 UI tests pass; one Rust test mismatch remains. No real D6 calibration or blind validation has been completed yet. Next: activate the 10 Hz firmware, resolve the packet-loss blocker, and rerun the preflight and empty-room baseline.
DEVLOG #19 I activated the new mmWave firmware and got the live 25-second preflight to pass once, but the first empty-room recording did not complete. The main work was hardening the transport: the firmware now sends redundant radar packets, while the server handles reordering, duplicates, short CSI gaps, and recent diagnostics instead of relying on cumulative counters. The UI also gained a controlled empty-room countdown. The remaining failure is intermittent: the sensor stays online and reports no local UDP send errors, but the server still recorded packets_lost=10 and packets_rejected=324 . The empty-room capture lasted only 4.8 s for radar and 5.1 s for CSI, so it is not a valid calibration reference. No calibration, training, or blind position result is claimed yet. Next: expose the exact reject reason and sequence-gap timing, fix the remaining transport problem, and repeat the complete empty-room measurement.
DEVLOG #20 Today I finally found why the four RX streams kept disagreeing: the server was fusing packets from different transmitter moments. The old path had already reached 98,126 engine errors with a timestamp spread of about 710 ms . The first timing fix exposed the deeper problem. The server was simply taking the latest packet from each receiver, even when those packets did not belong to the same event. I replaced that with bounded per-RX queues and approximate-time matching. The existing 60 ms guard stays fail-closed, so an incoherent quartet is discarded instead of becoming a fake D6 input. The new tests cover packet loss, reboots, sequence wrap, clock jumps, queue matching, and host-time fallback. 484/485 tests passed in the sandbox,. Next: restart the server and verify a stable, error-free 25-second preflight. But for now, time to sleep.
DEVLOG #21 The 65-second empty-room calibration failed before it could collect a usable baseline. The UI showed Samples 0 when I returned, so no calibration ID or context hash was created. The failure exposed a design problem in the run itself. A recoverable outside-room radar target could stop the entire measurement. I’m changing the workflow so the run always reaches its configured end and evaluates the evidence afterwards. The final report will mark it valid or invalid with concrete reasons instead of hiding the failure behind an early stop. This behavior change is planned, but not yet implemented or validated. No successful calibration, restored baseline, 10/10 acceptance, position index, guided room walk, or blind-test result is claimed. Next: implement and test the non-interrupting run plus the post-run validity report
DEVLOG #22 I fixed the last browser security gap found in the local security review: a page on one local port can no longer reach an unauthenticated service on another local port by default. The review contained 13 entries. Entries 8 and 11, and entries 12 and 13, were duplicates, leaving 11 unique findings. The old check trusted the hostname alone, so every localhost port was accepted. I separated browser Origin validation from the existing Host /DNS-rebinding protection. WebSockets and state-changing /api/v1/* requests now require an exact scheme, host, and port. By default, only http://localhost:<http_port> , http://127.0.0.1:<http_port> , and http://[::1]:<http_port> are allowed. Repeatable --allowed-origin values or the comma-separated SENSING_ALLOWED_ORIGINS variable explicitly replace these defaults. Host-only values, wildcards, null , paths, userinfo, and invalid ports are rejected. The protection covers /ws/* and /api/v1/stream/pose on both the HTTP and dedicated WebSocket ports. CLI clients without an Origin header remain compatible. The regression test now returns 403 for an unlisted cross-port UI, while an explicitly allowlisted cross-port UI still works. All 24/24 Origin/Host tests, 471 sensing-server tests ( 1 ignored), HomeCore server/API/auth/WebSocket tests ( 18 + 18 + 6 + 5 ), and 7 Python/firmware security-boundary tests passed. Binary checks, targeted rustfmt, and git diff --check also passed. No flash or OTA action was performed. The ESP-IDF v5.4 build matrix is still inconclusive: the native ARM64 image is missing a containerd layer, while the AMD64 fallback crashes in the emulated Xtensa compiler inside MbedTLS. I therefore do not count the three firmware builds as passed. Next: Solder PCB-02 first, then mount the mmWave sensor in the corner.
DEVLOG #23 The issue encountered during initial startup was a design error: the LD2450 had been mounted rotated by 180°. The UART routing itself was correct. After rotating the sensor and reflashing the ESP32-C3, everything worked again, though the physical setup doesn’t look very tidy. I designed PCB-03 based on PCB-02. The LD2450 connector and its wiring have been rotated by 180°. Everything else remains unchanged. I also added ground planes. Until the PCB arrives, the breadboard setup will continue to serve as a temporary mmWave configuration. Next steps: order PCB-03, mount the LD2450 in the marked orientation, and repeat the live radar verification. Continue using the breadboard setup until delivery.
DEVLOG #24 I strengthened security for live-sensor operation and started aligning the Observatory UI with backend functionality that actually exists. Live WebSockets now require Bearer authentication along with strict Origin and Host checks. Browser and Python clients no longer send tokens in the URL. Regression tests cover missing, invalid, and duplicate requests as well as cross-origin access. The complete CAD geometry document is now persisted in SQLite and survives a server restart. Another issue was in the browser catalog: it listed routes that the active Rust server did not provide. I am separating active routes from legacy compatibility routes, adding the missing model-details contract, and returning unavailable or HTTP 501 when browser-triggered training is not available instead of falsely reporting that it started. Next: finish and commit the route extraction, then repeat the live mmWave preflight, including calibration.
DEVLOG #25 I measured and optimized the mmWave UDP transport, but the radar path still fails the lossless-transmission test (image 1) . The new firmware and server path use one UDP copy without artificial delay, disable Wi-Fi power saving on the mains-powered node, persist the collector target and CAD transform, and separate socket reads from processing. Reordering, sequence validation, deduplication, and rolling metrics expose failures instead of hiding them. Across three 60-second runs, unique arrivals improved by 11.2%, sequence loss fell from 20.6% to 13.1%, duplicates dropped to zero, and arrival P95 improved by 27.8%. Two copies did not reduce loss and only added duplicates, so one copy remains the default. The transport is better, but not lossless: 13.1% sequence loss still blocks the radar preflight. The 50 ms interval is not the bottleneck; LD2450 frames arrive in bursts and the bridge emits about 2.64 measurements per second, not 20 independent frames per second. Next I will investigate RSSI and channel conditions, ARP and startup behaviour, Wi-Fi retries and airtime, and packet scheduling. RX/CSI stayed offline, so this is not a full Wi-Fi validation. The server refactor from DEVLOG #24 is now integrated: routes, state, runtime, calibration, recording, model, and system responsibilities moved out of main.rs , with active, legacy, and unavailable-training contracts separated. Desktop-interface removal remains in progress. Hardware-control modules are moving to a standalone control crate, while loopback-only browser server controls with origin checks are being added. Phase 1 calibration is also getting a longer measurement window and persisted evidence. RX3 currently lands roughly two to three metres from its expected fixed point. I will not consider the calibration valid until the transform, profile binding, or target association causing this offset is understood and corrected. Next: resolve the RX3 Phase 1 offset (seen in image 2) , then repeat the full fixed-point calibration and re-verify the radar preflight.
DEVLOG #26 I have completed, soldered, and tested the third and hopefully final PCB revision. Everything works, but the ground plane made soldering significantly more difficult than expected. Even with thermal reliefs around the solder pads, the plane acted like a heat sink, dissipating heat across the entire board. The shift to a browser-centric approach is progressing: the Tauri desktop app and its associated release pipeline are being removed, while hardware control is being moved to a standalone “loopback crate.” This crate handles tasks such as device discovery, serial access, provisioning, flashing, OTA updates, and WASM integration. This work is currently ongoing. The server now protects the /api/field and /ws/field endpoints using Bearer authentication and keeps auto mode offline until real data is available. An explicit simulated source is required for simulation. mmWave transmission has been improved but still exhibits a sequence loss rate of 13.1%, causing the radar preflight to remain blocked. The causes of the remaining loss still need to be investigated, particularly regarding channel conditions, the startup process/ARP, and Wi-Fi airtime and scheduling. The calibration offset for “Phase 1” on RX3 also remains unresolved. Next steps: fixing the RX3 offset, completing the migration to the browser/control setup, and re-running the radar preflight.
DEVLOG #27 I soldered a second PCB from revision 3, making the hardware for two mmWave sensors available. The software now keeps MMWAVE1 and MMWAVE2 separate through stable node identities and independent sequence, transform, and calibration state. The mmWave transport also crossed an important milestone. Because best-effort UDP was not enough, firmware 0.1.6 now uses ACK-based retransmission. In a controlled 60-second comparison, sequence loss reached 0.00% and the radar_sequence_loss_free gate passed, compared with 0.70% loss and 84 full ACK timeouts on firmware 0.1.5. The Tauri desktop shell has been replaced in the active build by a loopback control helper for discovery, provisioning, flashing, OTA, and WASM. I also created a new 3D-print file, which is currently being printed; the mechanical result is not finished yet. Next: validate both sensor paths together, resolve the RX3 Phase 1 offset, and repeat the full radar preflight.
DEVLOG #28 I prepared and locally verified an ESP-IDF replacement candidate for TX1. The firmware builds successfully, and the host-side checks for packet handling, scheduling, boot/OTA variants, and negative compile guards pass. This is still a software-only result. Nothing has been flashed, and TX1 has not been validated on hardware. Before replacing the existing TX1, the old TX1/RX4 baseline and network pre-check must still be completed. I also tightened the RX data path. Incoming frames are now checked for valid input and correct TX binding before passing through one jitter-tolerant 20 ms admission gate. Invalid or foreign frames no longer consume the timing budget. Callback, queue, UDP, and server-side counters are tracked separately, making it possible to see where loss or delay occurs. The deterministic fixtures and local ESP32-S3 build pass, but no live RX measurement has yet shown an actual reduction in frame loss or data age. The new 3D print exposed a mechanical error: it is approximately 1 mm too small and does not fit. It needs to be adjusted and printed again. Next: complete the read-only TX1/RX4 baseline, adjust and reprint the part, then continue with RX3 calibration and validation of both mmWave sensor paths.
DEVLOG #29 The local RX work has expanded, but the two-sensor setup is currently blocked by a connection problem with mmWave2. RX-04 to RX-12 add bounded capture and queue handling, stale-frame rejection, corrected CSI parsing, clearer UDP/server counters, and timing and synchronization metadata. The firmware host tests, standard and raw ESP32-S3 builds, and targeted server checks pass. These are still software and build results. No live RX measurement has yet proven lower frame loss or data age. :( The 3D-printed part now fits. While investigating the mmWave2 connection, I tried to desolder its ESP, but it could not be removed cleanly. Since the connection problem is not resolved, I ordered a replacement ESP, a new mmWave sensor, and an FH/Fenghua 1206X106K160NT SMD component. The exact cause is still open, and the replacement parts have not been installed or tested yet. The existing TX1 replacement also remains locally tested but unflashed. Next: rebuild mmWave2 with the replacement parts, identify the connection fault, validate both sensor paths, and continue with RX3 calibration.
DEVLOG #30 The replacement ESP for mmWave2 is now soldered and mounted on the previously working breadboard setup. The connection problem has not disappeared, however WiFi still fails, so I uploaded a minimal WiFi test script to isolate the radio and network path before testing the radar or UDP transport. The mmWave firmware now distinguishes MMWAVE1 and MMWAVE2 with separate build and upload paths, uses 55010 as the default UDP port, and logs the WiFi disconnect reason. These changes are prepared locally; the test image is not yet a confirmed fix, and the complete mmWave2 path is still unvalidated. In parallel, the TX1 replacement reached a stronger local checkpoint. Reproducible builds from fresh and isolated source copies are byte-identical, and the local test suite passed. The 7A TX1/RX4 baseline still produced no usable measurement data, so the migration remains blocked and 7B is NO-GO . Next: resolve the WiFi connection on the replacement ESP, verify mmWave2 communication, and continue with two-sensor validation and RX3 calibration.
DEVLOG #31 The mmWave2 connection problem is finally understood. It was caused by a reproducible dependency on the WLAN transmit power: at around 19.5 dBm, the ESP kept running and received probe requests, but its test AP could not be found and connections failed. At 10 dBm, the AP worked immediately, csi-test connected again, and 360/360 pings succeeded without a disconnect. Raising the limit reproduced the issue, confirming the dependency. Both mmWave sensors now work reliably. The TX1 migration is also complete. I verified the candidate firmware and baseline, created two identical 16 MiB backups. The new app was written to app1 together with the NVS merge and OTA selection. A complete readback of all 16,777,216 bytes matched the expected flash image exactly. Next: Boot the candidate under the existing safety gates, check that TX1 comes up properly, and run the full comparison.
DEVLOG #32 I still do not really have a final result to show, but it has been another ten hours, so I did not want to skip the devlog. The latest TX1 boot attempt did at least narrow things down. The new firmware now passes the Wi-Fi channel checks: channel 6, HT40 with the secondary channel below, AP-only mode, and the other radio checks all matched the expected profile. It then stops at CHECK_COUNTRY , before reaching BOOT_OK . The TX1 migration is therefore still not accepted, but the failure is much more specific now. The confusing part is that the Wi-Fi power values do not line up cleanly. The country structure reports a different power field than expected, while the separate power API returns the expected value. This may be an SDK representation or comparison issue rather than a real transmit-power problem, but there is not enough evidence to call it fixed yet. I also corrected related checks for the country bytes, SSID representation, and status getters, and prepared another reproducible candidate offline. With the move to Python 3.15, I also added the new lazy-import implementation. The official Python documentation describes the new syntax. Eligible imports now use explicit lazy import and lazy from syntax, with a local verifier to keep the behavior consistent. After the failed candidate boot, I restored the original 16 MiB image and verified the return path. The historical firmware is running again, and RX4 plus both mmWave sensors are sending data. Next: resolve the country/power comparison, then attempt the candidate boot again under the existing safety gates.
DEVLOG #33 The TX1 finally made it all the way to BOOT_OK . After the CHECK_COUNTRY problem from the last update, the new candidate passed the Country20/Power44 and Wi-Fi checks, booted into test mode, and passed the local TX/RX4 checks. I also confirmed the amber LED and both mmWave transport paths. The previous candidate had stopped because one sampling gap grew to 10.2 seconds. I traced that back to the timing bookkeeping and changed the sampler to schedule from the last real sample completion. The corrected run stayed within the sampling limits. That is a real improvement, but it is not the final acceptance yet. The full coverage result is still blocked by the clock-binding requirement, and the radar window only showed no_target , not a position result. I also switched to the new diagnostic server in a controlled run. It stayed ready and a separate 61-second capture passed the coverage gate, but the active CSI position setup is still missing, so this does not count as a complete TX-7B or system pass. The CAD UI got a pretty big upgrade too. MMWAVE1 and MMWAVE2 can now be edited as separate sensors with their own colors, 6 m fields of view, direction arrows, and yaw handles. I added a button to aim them at each other, plus a wall-angle tool that draws the real beam/wall intersection and lets me set the angle directly. Marker labels also move out of the way automatically, and the snap setting survives a refresh. Next: fix the remaining coverage and clock evidence, activate the sealed CAD/CSI setup, and complete the full TX-7B validation.
DEVLOG #34 The TX1 migration is now 100% verified , but the project is still only around ≈ 70% complete. The third and final boot attempt did not give me the clean result I was hoping for. Recovery happened within the allowed time, but UART0 showed two app starts. After the first start, an RTC_SW_CPU_RST appeared and the app started again. It eventually reached BOOT_OK , but because of the duplicate start I still cannot accept the boot trace or move on to server activation and measurements. I am currently documenting the exact restart sequence and trying to figure out what caused it. I also put together a source collection about Wi-Fi sensing and RF-based person detection. GitHub The separate mmWave freshness test did not reproduce the old MMWAVE2 delay problem, but that does not prove it is fixed. Next: get one clean TX1 boot, then activate the server and start collecting real measurements.
DEVLOG #35 I fixed two concrete TX1 firmware bugs. An authentication check that ran too late and an HTTP task with too little stack space. The status endpoint could lose the request headers before checking authorization. I moved that check ahead of the response. I also increased the HTTP task’s stack from 4 KB to 8 KB after confirming that some call paths could exceed the old limit. Two independent builds matched byte for byte. After taking fresh backups, I installed the candidate and verified the complete 16 MiB flash against the expected image. That part passed. The UDP/ENOMEM errors are not yet proven fixed. Next: investigate the reset path, complete a clean controlled boot, then check the matching server setup, authentication, all participants, and the measurement windows.
DEVLOG #36 The first full TX1 acceptance run is done now and it failed, but at least I finally have a much clearer picture of what is still going wrong… The common setup passed: all seven expected participants were visible, and 22 complete snapshots kept the shared basis valid for more than 20 seconds. Then Scope A ran its three 120-second windows. All three failed. There were 14 new TX send errors, and the diagnostic counters placed them in the wifi_handoff ENOMEM stage. That tells me where the error was recorded, but not yet why it happens or whether it is fixed. MMWAVE2 also became stale in parts of the run, and several RX requests were missing, so none of the historical comparisons could count as a valid PASS. Scope B stopped itself at the safety gate when the source binding became inconsistent and RX2 was already 5.044 seconds old. This is frustrating, but the guard did exactly what it was supposed to do, it refused to turn an incomplete 120-second window into a result. Next: decide how to continue the ENOMEM and source-binding issues before starting another acceptance run.
DEVLOG #37 I narrowed down the RX2 and mmWave2 issues from the failed run. Still no hardware fix, but the picture is getting clearer. The surprising part is that RX2 was still sending valid CSI packets during its apparent dropout. They just weren’t the 128-subcarrier frames the current evaluation needs. mmWave2, on the other hand, really did have gaps in packets reaching the host. I’m looking into its send-and-acknowledgement path, but haven’t proven the cause yet. I also found a parser mistake. A supposedly damaged RX packet was actually a valid warning message. That’s corrected in the isolated diagnostic tools, which now also distinguish device timeouts from requests the collector skipped or cancelled. New diagnostic firmware candidates for TX1, RX2 and mmWave2 are built locally to help trace where things stop moving. They aren’t installed yet, and the TX send errors are still unresolved. The UI is less misleading now, too: an ESP being reachable doesn’t mean radar data is arriving, and old readings no longer keep disconnected devices looking active. Next: review the diagnostic candidates, then use a short, controlled hardware run to investigate the remaining errors. The last full acceptance is still a FAIL.
DEVLOG #38 RX2 is finally delivering a lot more matching CSI data. After installing the new firmware, the rate went from about 1.9 to 31.9 frames per second. A longer, half-hour capture averaged around 30. The firmware now fixes Wi-Fi bandwidth at 20 MHz and guards against invalid CSI callbacks. One annoying catch: the long capture only recorded RX2 because some device endpoints were outdated or mixed up. I’ve prepared a stricter preflight so an incomplete group can’t silently become a four-receiver test again. I also corrected the offline window analysis. A valid frame with a different format no longer ruins an entire otherwise usable window. The UI code now separates format exclusions from unexplained sequence gaps instead of calling everything “loss”. The host fixes are tested locally, but aren’t active on the running server yet. Next: complete a proper simultaneous four-RX capture, then implement the RX1 <-> RX4 peer profile for testing. Tracking and full-system acceptance are still open.
DEVLOG #39 All four receivers finally made it through a full 30-minute CSI run together. RX1, RX3 and RX4 are now on C1, while RX2 stays on C. Each delivered around 17–20 matching frames per second, and 99.61% of the shared measurement windows passed the CSI checks. The RX1↔RX4 peer firmware and recording workflow are also implemented and tested offline now. The actual radio comparison hasn’t happened yet, so I still don’t know whether those extra links will improve positioning. One annoying bug kept rejecting good data after a 128→64→128 format change. That’s fixed in the offline analysis, along with separate format rules for TX1 and peer links and a recorder completion check. I also added RX and radar exports that keep raw data, timing and recording boundaries together. That path works in offline tests; it isn’t a new live hardware result. Next: check both mmWave sensors individually and then together at known points. The shared CSI run is a milestone, but tracking and full-system acceptance are still open.
DEVLOG #40 I cut the recording footprint from 4.54 to 2.67 GB in the full synthetic test, about 41% less. The saving comes mainly from removing duplicate exports, not throwing away raw data or evidence. I also corrected timing and CSI rate-limit bugs offline, plus a cleanup issue that could prevent the recorder from stopping its own processes when disk space got tight. The frustrating part is that the peer comparison still hasn’t recorded anything. One attempt stopped on the timing bug, after that was fixed, the next hit a missing signing key during host startup. No peer firmware was uploaded and no capture started in either attempt. Next: fix host startup and prepare a separate 35-minute pilot. The actual peer comparison and tracking acceptance are still open.
DEVLOG #41 RX1 finally passed a full three-minute TX1→RX1 test. 6,407 qualified CSI frames, around 35.6 per second, and all 173 measurement windows passed. The firmware had been rejecting our setup because TX1 is also the Wi-Fi access point. That’s corrected and installed now. SOS is the warning for missing or stale usable CSI from TX1. It doesn’t automatically mean the board is broken. Ironically, the warning itself had a bug, RX1 reported stale data even though a matching frame had arrived just 8.7 milliseconds earlier. A timing race between the LED task and CSI reception caused the false alarm. The fix is built and tested offline, but isn’t installed yet. Host startup and recording also work now. RX2 is still a problem, though: its upload timed out while CSI kept arriving, and the cause isn’t confirmed. Next: install and verify the LED fix on RX1 before continuing with the other receivers. The actual two-way peer comparison and tracking acceptance are still open.
DEVLOG #42 RX3 and RX4 have passed their individual checks on the latest firmware. A complete OTA update, the LED pattern test and ten minutes of stability monitoring each, with no errors recorded. The false SOS warning on RX1 is also fixed and verified on the board now. I corrected concurrent access in the shared UDP sender and transport statistics, too. Those are real software fixes, but I still can’t claim they explain the original RX3 heap corruption or watchdog resets. I also improved CAD profile handling. Profiles can use a separate store, the UI shows which revision is loaded, and refreshing no longer overwrites unsaved edits or brings back an older saved version. The rollout isn’t finished, though. The next RX1 update stopped because its device identity couldn’t be confirmed, so RX2’s update to this latest version hasn’t started either. Next: resolve that binding, finish updating RX1 and RX2, then move on to the actual two-way peer comparison. Tracking acceptance is still open....
|
1792572487.707279
|
1793177287.707279
|
|
69949
|
NovaSpark Dev by @MasterCoder | Stardance
|
MasterCoder
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T15:56:51Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I created a website about me!!! My biggest challenges were trying to add the fade in and typewriter effects. I was able to fix these errors using similar errors from Stack OverFlow. Try it and tell me if you like it :D", "repo": "https://github.com/MasterCoder360/novaspark", "demo": "https://mastercoder360.github.io/novaspark/"}]...
|
[{"post_id": 80705, "ts": "202 [{"post_id": 80705, "ts": "2026-10-18T15:55:08Z", "hours": 0.3158, "text": "Yay! I am finally done with the README and the project, this is the final devlog I will be posting, please check out my site and tell me if you like it and feel free to take inspiration."}, {"post_id": 80690, "ts": "2026-10-18T14:55:09Z", "hours": 0.75, "text": "I am finally done with my personal website!!! There were a few minor bugs though, the typewriter effect I put on almost all my pages were failing to load because they were being pulled by one script.js, but I did find a similar error in StackOverFlow and fixed it. I did not even use AI in the whole process and am proud of myself :). The only step left is creating my README."}, {"post_id": 80485, "ts": "2026-10-17T20:22:47Z", "hours": 2.4861, "text": "Welcome to NovaSpark Dev, the personal site for Raahil Aalam. I coded About Project, and the main page, 3 more to go. I added typewriter and fade in text using snippets from w3schools and debugged some code using stackoverflow."}]...
|
Title: NovaSpark Dev by @MasterCoder | Stardance
Title: NovaSpark Dev by @MasterCoder | Stardance
Devlogs:
Welcome to NovaSpark Dev, the personal site for Raahil Aalam. I coded About Project, and the main page, 3 more to go. I added typewriter and fade in text using snippets from w3schools and debugged some code using stackoverflow.
I am finally done with my personal website!!! There were a few minor bugs though, the typewriter effect I put on almost all my pages were failing to load because they were being pulled by one script.js, but I did find a similar error in StackOverFlow and fixed it. I did not even use AI in the whole process and am proud of myself :). The only step left is creating my README.
Yay! I am finally done with the README and the project, this is the final devlog I will be posting, please check out my site and tell me if you like it and feel free to take inspiration.
Ships:
I created a website about me!!! My biggest challenges were trying to add the fade in and typewriter effects. I was able to fix these errors using similar errors from Stack OverFlow. Try it and tell me if you like it :D...
|
1793195700.0639899
|
1793282100.0639899
|
|
70341
|
Python Calculator by @selvar | Stardance
|
selvar
|
0
|
0.38
|
0
|
[]
|
[{"post_id": 80700, "ts": "202 [{"post_id": 80700, "ts": "2026-10-18T15:38:48Z", "hours": 0.3775, "text": "I am making a Python Calculator in the terminal"}]...
|
Title: Python Calculator by @selvar | Stardance
D Title: Python Calculator by @selvar | Stardance
Devlogs:
I am making a Python Calculator in the terminal...
|
1793001144.288857
|
1793605944.288857
|
|
70336
|
Remorse by @ajay | Stardance
|
ajay
|
1
|
4.0
|
8
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T15:27:38Z", "hours": 4.0, "multiplier": 1.97, "payout": 8, "blessing": "neutral", "text": "I made an API(kinda) in python with FastAPI and this can translate morse code and english back and forth. There are 2 GET endpoints for the same.", "repo": "https://github.com/s-ajay-2010/remorse", "demo": "https://remorse.orpheusairlines.xyz/"}]...
|
[{"post_id": 80693, "ts": "202 [{"post_id": 80693, "ts": "2026-10-18T15:17:01Z", "hours": 4.185, "text": "Finished Remorse This is an API written in python with FastAPI. Added 2 GET endpoints on for morse to english and another for english to morse. And a smoll UI to it for landing page. That’s all yayy!! P.S.: Since I’m porting this from #cq the devlogs are there, hence I’ve attached images of em :3"}]...
|
Title: Remorse by @ajay | Stardance
Devlogs:
Fini Title: Remorse by @ajay | Stardance
Devlogs:
Finished Remorse This is an API written in python with FastAPI. Added 2 GET endpoints on for morse to english and another for english to morse. And a smoll UI to it for landing page. That’s all yayy!! P.S.: Since I’m porting this from #cq the devlogs are there, hence I’ve attached images of em :3
Ships:
I made an API(kinda) in python with FastAPI and this can translate morse code and english back and forth. There are 2 GET endpoints for the same....
|
1793137744.5095549
|
1793224144.5095549
|
|
48736
|
Wifi and blutooth jammer by @Txseen | Stardance
|
Txseen
|
1
|
2.27
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-19T13:56:10Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i had made a bluetooth and wifi jammer", "repo": "https://github.com/EmenstaNougat/ESP32-BlueJammer", "demo": ""}]...
|
[{"post_id": 80692, "ts": "202 [{"post_id": 80692, "ts": "2026-10-18T15:13:21Z", "hours": 1.2714, "text": "another circuit diagram"}, {"post_id": 69652, "ts": "2026-09-17T14:39:07Z", "hours": 0.3006, "text": "circuit diagram of jammer"}, {"post_id": 69621, "ts": "2026-09-17T13:08:18Z", "hours": 0.3008, "text": "jammeer coodes"}]...
|
Title: Wifi and blutooth jammer by @Txseen | Stard Title: Wifi and blutooth jammer by @Txseen | Stardance
Devlogs:
jammeer coodes
circuit diagram of jammer
another circuit diagram
Ships:
i had made a bluetooth and wifi jammer...
|
1793148572.9930704
|
1793234972.9930704
|
|
70249
|
Resin by @DoMax | Stardance
|
DoMax
|
0
|
24.81
|
0
|
[]
|
[{"post_id": 80691, "ts": "202 [{"post_id": 80691, "ts": "2026-10-18T14:58:28Z", "hours": 24.8122, "text": "Quite a late first post! This project began quite a while ago, but I wasn’t devlogging. So let me show you around. My plan with Resin When I started out with Hack Club’s Sprig, I couldn’t really bear the software limitations. I always thought RPI Pico is more capable than how it’s portrayed with Sprig. While this Hack Club initiative is great, inconsistencies between the web simulator and real firmware (many games don’t work on the console) mixed with quite a poor editor made me wonder about a Python alternative. Its primary goal - beating current firmware: No differences between simulation and real firmware, ensuring code works everywhere HUGE performance improvement Updated API, making Sprig feel like a real game console Multiple-file workflow with imports Image-based graphics (instead of bitmaps) Better launcher experience What have I already implemented? By exploring MicroPython and testing the speed I saw something incredible - a seemingly equal setup had shockingly smooth perforemance, even reaching stable 60-ish fps! All thanks to these solutions: Python handles calculations, C handles hardware access Small framebuffer allocations within Python, C code handles displaying the pixels Utilization of the DMA (direct memory access) chip - allows no CPU use for certain memory transfers, which doesn’t block game loop In addition to this, Input, Rect drawing, persistent State store and general rendering now work flawlessly. Out of screen objects are not rendered (culled), which also helps with smooth frame times. Sprig’s official colors are also transferred perfectly! How did the development journey go so far? Initial build setup was quite complex, as I’ve never made a MicroPython derrivative, so I had to carefully plan the architecture (to make Resin firmware build, include custom libraries, and have in mind publication to PyPI). On top of that, the hardest part was getting hardware to register properly. Screen requires some magic bytes to be sent to initialize. SPI bridge for communication made things easier (having to manage only a handful of pins), however getting it to render colors and do so in correct orientation was a nightmare. Official repository was a great point for reference regarding to how hardware is configured and wired on the PCB, however I had to make my own research while implementing DMA chip framebuffer transfers. The rest is pure python - when I implement the game launcher and write a small utility to make game transfers easier, I will finish defining the rest of developer API. What’s next? Resolving bugs, writing a launcher, and, of course, a simulator, so that anyone can develop games for Sprig without the real hardware. This way Resin can even become a choice for game developers and function as a standalone game engine! Delta time for frametime-independent calculations and API guards to not overwrite important memory by accident are also one of my top priorities. What you see below is a test Python file running - no C code for game’s logic. If you have a Sprig and want to help me test Resin, DM me on Slack!"}]...
|
Title: Resin by @DoMax | Stardance
Devlogs:
Quite Title: Resin by @DoMax | Stardance
Devlogs:
Quite a late first post! This project began quite a while ago, but I wasn’t devlogging. So let me show you around. My plan with Resin When I started out with Hack Club’s Sprig, I couldn’t really bear the software limitations. I always thought RPI Pico is more capable than how it’s portrayed with Sprig. While this Hack Club initiative is great, inconsistencies between the web simulator and real firmware (many games don’t work on the console) mixed with quite a poor editor made me wonder about a Python alternative. Its primary goal - beating current firmware: No differences between simulation and real firmware, ensuring code works everywhere HUGE performance improvement Updated API, making Sprig feel like a real game console Multiple-file workflow with imports Image-based graphics (instead of bitmaps) Better launcher experience What have I already implemented? By exploring MicroPython and testing the speed I saw something incredible - a seemingly equal setup had shockingly smooth perforemance, even reaching stable 60-ish fps! All thanks to these solutions: Python handles calculations, C handles hardware access Small framebuffer allocations within Python, C code handles displaying the pixels Utilization of the DMA (direct memory access) chip - allows no CPU use for certain memory transfers, which doesn’t block game loop In addition to this, Input, Rect drawing, persistent State store and general rendering now work flawlessly. Out of screen objects are not rendered (culled), which also helps with smooth frame times. Sprig’s official colors are also transferred perfectly! How did the development journey go so far? Initial build setup was quite complex, as I’ve never made a MicroPython derrivative, so I had to carefully plan the architecture (to make Resin firmware build, include custom libraries, and have in mind publication to PyPI). On top of that, the hardest part was getting hardware to register properly. Screen requires some magic bytes to be sent to initialize. SPI bridge for communication made things easier (having to manage only a handful of pins), however getting it to render colors and do so in correct orientation was a nightmare. Official repository was a great point for reference regarding to how hardware is configured and wired on the PCB, however I had to make my own research while implementing DMA chip framebuffer transfers. The rest is pure python - when I implement the game launcher and write a small utility to make game transfers easier, I will finish defining the rest of developer API. What’s next? Resolving bugs, writing a launcher, and, of course, a simulator, so that anyone can develop games for Sprig without the real hardware. This way Resin can even become a choice for game developers and function as a standalone game engine! Delta time for frametime-independent calculations and API guards to not overwrite important memory by accident are also one of my top priorities. What you see below is a test Python file running - no C code for game’s logic. If you have a Sprig and want to help me test Resin, DM me on Slack!...
|
1792961345.0527992
|
1793566145.0527992
|
|
66977
|
Neil The Astronaut by @Geki | Stardance
|
Geki
|
1
|
9.16
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-04T12:02:37Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Hello! I made Neil The Astronaut, Neil is a desktop buddy/assistant that stays with you while you’re working, coding or just browsing the internet. He has AI Integration which can help u while you are doing something and need a quick answer and also it can read files too if the user needs help with files quickly to translate or summarize, you can make him idle if he is distracting and also when mad u can just grab and throw him around the screen ( he bounces sometimes). Also there is the Annoying mode where he closes your tabs. For me the most challenging part was integrating the AI and the file feature, I used Gemini for help because I had no idea how to even go about it. I am proud that it is actually useful, at first I thought its just a pet but no I would classify Neil as you Astronaut assistant!! Good to know is that I don’t recommend to use the F1 key to ask since F1 is also to open windows for help but just right-click Neil and click ask Neil on the Menu. be careful if using annoying mode because if u have important tabs open he will close them, if he does click ctrl + shift + T to bring the tab back. Hopefully you guys enjoy it and actually use it after rating, that would be amazing! ( I will maybe make a video on Neil not too sure yet ).", "repo": "https://github.com/GesPm/Neil.The_Astronaut", "demo": "https://gekib.itch.io/neil-the-astronaut"}]...
|
[{"post_id": 80687, "ts": "202 [{"post_id": 80687, "ts": "2026-10-18T14:48:54Z", "hours": 1.1628, "text": "Fixed README and some bugs such as when u ask Neil something he just teleports under the screen 😅 and also integrated Hackclub AI (Qwen3-32B) API key to work with Neil!"}, {"post_id": 76670, "ts": "2026-10-04T09:48:39Z", "hours": 0.6617, "text": "You can now drop files in the query and give tasks on what to do with them! And also he now has memory to remember the last 5 answers and questions. Neil is fully finished!"}, {"post_id": 76527, "ts": "2026-10-03T20:38:04Z", "hours": 4.7719, "text": "Full menu for Neil added, also added a bunch of new features. Neil will be launching on itch.io soon!!! Also yes he does close tabs and yes ITS INTEGRATED WITH AI!! (Optional of course)"}, {"post_id": 75873, "ts": "2026-10-01T13:16:41Z", "hours": 1.3064, "text": "You can now throw Neil around and he will bounce around and land on one your bezel! I will also add 1 final feature to make Neil more “useful”."}, {"post_id": 75574, "ts": "2026-09-30T14:01:48Z", "hours": 1.0783, "text": "What do I name him? Got the animations fully done and the code works, I just need to add more stuff he can do!"}]...
|
Title: Neil The Astronaut by @Geki | Stardance
De Title: Neil The Astronaut by @Geki | Stardance
Devlogs:
What do I name him? Got the animations fully done and the code works, I just need to add more stuff he can do!
You can now throw Neil around and he will bounce around and land on one your bezel! I will also add 1 final feature to make Neil more “useful”.
Full menu for Neil added, also added a bunch of new features. Neil will be launching on itch.io soon!!! Also yes he does close tabs and yes ITS INTEGRATED WITH AI!! (Optional of course)
You can now drop files in the query and give tasks on what to do with them! And also he now has memory to remember the last 5 answers and questions. Neil is fully finished!
Fixed README and some bugs such as when u ask Neil something he just teleports under the screen 😅 and also integrated Hackclub AI (Qwen3-32B) API key to work with Neil!
Ships:
Hello! I made Neil The Astronaut, Neil is a desktop buddy/assistant that stays with you while you’re working, coding or just browsing the internet. He has AI Integration which can help u while you are doing something and need a quick answer and also it can read files too if the user needs help with files quickly to translate or summarize, you can make him idle if he is distracting and also when mad u can just grab and throw him around the screen ( he bounces sometimes). Also there is the Annoying mode where he closes your tabs. For me the most challenging part was integrating the AI and the file feature, I used Gemini for help because I had no idea how to even go about it. I am proud that it is actually useful, at first I thought its just a pet but no I would classify Neil as you Astronaut assistant!! Good to know is that I don’t recommend to use the F1 key to ask since F1 is also to open windows for help but just right-click Neil and click ask Neil on the Menu. be careful if using annoying mode because if u have important tabs open he will close them, if he does click ctrl + shift + T to bring the tab back. Hopefully you guys enjoy it and actually use it after rating, that would be amazing! ( I will maybe make a video on Neil not too sure yet )....
|
1793217036.3048387
|
1793303436.3048387
|
|
70102
|
Rockets! by @LeonOMO | Stardance
|
LeonOMO
|
0
|
3.92
|
0
|
[]
|
[{"post_id": 80683, "ts": "202 [{"post_id": 80683, "ts": "2026-10-18T14:39:05Z", "hours": 3.9169, "text": "Devlog #1. First time using OpenRocket and its really understandable. I will make my latest onshape rocketmodel in OpenRocket and test how it will do."}]...
|
Title: Rockets! by @LeonOMO | Stardance
Devlogs:
Title: Rockets! by @LeonOMO | Stardance
Devlogs:
Devlog #1. First time using OpenRocket and its really understandable. I will make my latest onshape rocketmodel in OpenRocket and test how it will do....
|
1792958046.586834
|
1793562846.586834
|
|
50131
|
Vanguard SSA (Space Situational Awareness) by @Spa Vanguard SSA (Space Situational Awareness) by @SpaceRanger | Stardance...
|
SpaceRanger
|
0
|
30.61
|
0
|
[]
|
[{"post_id": 80681, "ts": "202 [{"post_id": 80681, "ts": "2026-10-18T14:11:49Z", "hours": 1.4303, "text": "Well, you can now choose your own time multiplier from between the Real world, and the app. This part was(Mostly) gemini code. I suck at math, so I had it do the calculations and stuff. I also tried to Make the earth also spin in relation to the satellites using Julian Time mathematical calculations, But i’ve not been able to achieve that. Changelog git commit -m “choose time multiplier plus earth rotation” ( a585661 ) choose time multiplier plus earth rotation ( eca1623 )"}, {"post_id": 76714, "ts": "2026-10-04T12:17:06Z", "hours": 1.9442, "text": "Changelog configured 2 way channel websocket broadcast. can now receive info from the frontend ( 2500f28 ) Yeah. That’s all. “THAT’S ALL YOU DID FOR 2 HOURS 🙆♀️”. Yeah. Keep judging. Until you try to code in RUST 😑🙂"}, {"post_id": 75998, "ts": "2026-10-01T23:58:50Z", "hours": 1.0653, "text": "Changelog Made the in App world go 60* faster than the normal time. ( be91922 ) Basically, 1 Normal second is 60 seconds in app. 1 Normal hour is 60 hours in app"}, {"post_id": 75991, "ts": "2026-10-01T21:38:25Z", "hours": 1.0053, "text": "Changelog Trajectory calculation Now uses universal timestamp ( c842228 ) Okay, Because Celestrak tracks and updates satellite data at different times, The data from the API doesn’t actually reflect the current coordinates of the satellites, especially when compared to one another. While the specific orbits were accurate, The timing was completely random, and so, if 2 satellites were recorded in the same position, 6 hours apart, My simulation will start them in the same coordinate. This is obviously dangerously inaccurate. Fix: I removed the simulated “timestep” entirely, and Built the whole thing to Check current time, Check time the satellite’s data was recorded, and Simulate Orbit/Calculate trajectory and coordinates based on that. Problem with that is, without the timestep, My previous calculation for How fast this thing can run in relation to real word time will be totally wrong. I’ll fix that next."}, {"post_id": 75982, "ts": "2026-10-01T20:30:22Z", "hours": 0.6856, "text": "Changelog Improve error handling for satellite and debris data fetching; adjust time step for simulation ( 7e7c487 ) Coming back to this after legit leaving it for One month 😭. Anyway, I fixed error handling for Cases where the user is not able to ping the Celestrak servers to get the data needed. Now It just falls back to the Cache. I also reduced the amount of time That goes by in app, to perfectly mirror the real world."}, {"post_id": 73015, "ts": "2026-09-24T07:04:21Z", "hours": 1.5769, "text": "A few different things have bugged me since last I Devlogged. For one, i’m not tntirely sure how to go on. What i need, to remove, and all. Secondly, everything is so Unorganized rn. So many debris and satellites Just swimming around in Orbit against a static Earth And everything doesn’t even scale properly. Lastly, I’ve tried to focus a bit more on Orging My own YSWS. Thank goodness stardance was extended(Expected, but thank goodness still)."}, {"post_id": 68568, "ts": "2026-09-15T10:28:11Z", "hours": 1.9689, "text": "Changelog tweaks and updates ( 7fc4786 ) Ported satellite data from backend, and introduced satellite component in frontend. ( b6b8e5d ) Meh. Frontend change. Not much."}, {"post_id": 64802, "ts": "2026-09-09T13:47:15Z", "hours": 1.9544, "text": "Changelog Updated program to include, and handle both satellite and debris Cache Data from Celestrak ( 1665273 ) Basically, Now I have 2 files of both Debris data and Satellite Data"}, {"post_id": 63937, "ts": "2026-09-08T00:39:47Z", "hours": 1.2925, "text": "Changelog Implement caching for live satellite data and adjust debris scaling for better visualization ( 0e71088 ) Okay, so remember in my last Devlog, i noted that Celestrak didn’t like me pinging their servers more than once every 2 hours, which crashes my RUST backend. So today i implemented Caching. Basically, How this works is, I check if there is a file named “active_satellites.txt”, if there is not, i go ahead and create one, and add all the satellite TLE data from Celestrak here. If there already was one, I check the MetaData for time modified, and if this is more than 2 hours, I ping Celestrak again, and Update the File with new data. If it is less than 2 hours tho, i go ahead and use the one i already HAD."}, {"post_id": 62528, "ts": "2026-09-05T23:06:15Z", "hours": 1.88, "text": "Changelog Changed from Static data to live data using celestrak Starlink APIs. ( 4a27c90 ) Okay, so i HAVE been able to Change from Static data to live data using Celestrak Starlink APIs. Doing this inSo many problems like Chunking, Parsing, RUST async/await, and doing all of that over 500 3d models without frying my CPU. Now, even tho i have been able to get it actually showing up, I need to deal with Celestrak Rate limiting, and Separating Debris from Satellites(Currently, One of the satellite is chosen to be the Satellite, and the rest are set to debris lol). I’ll fix all of this Tomorrow, FOR NOW I HAVE TO SLEEP(My girlfriend got Mad i was not sleeping enough lol 😭😂). Also fixing Scaling, as these should NOT be this big compared to the earth lol."}, {"post_id": 61809, "ts": "2026-09-04T21:53:45Z", "hours": 0.9103, "text": "Changelog Collision Detection now works on the frontend by changing to a red glow from a cyan glow. ( 81c0078 ) Okay, Massive W on this devlog. So I made collision detection show up on the frontend rather than just the Backend by enhancing my RUST functions to return a True or False value when collision is detected. I had some problems with that, cause RUST doesn’t do global variables, and trying to pass a variable from one function(The collision detector) To another(The trajectory calculation), to add a value to my struct was quite literally impossible. I had to delete one of my threads, and change my architecture from branching to linear. Oh, and I also changed the number of debris from 10 to 100, and the collision distance from 100km to 1000km to ensure collision will be detected lol."}, {"post_id": 61475, "ts": "2026-09-04T12:37:51Z", "hours": 0.7792, "text": "Changelog Add Asteroid component and GLB model for 3D visualization ( f92bbd9 ) Yay 🥳🎉. Finally have the debris models showing up. They’re really small tho, so can’t really be seennn. Lemme make them a bit bigger Done."}, {"post_id": 60702, "ts": "2026-09-03T07:58:01Z", "hours": 1.8011, "text": "Changelog Replaced 250 dynamic debris with 10 Static Debris. ( 10a6f0a ) Sighs. I promise this is not all i did for nearly 2 hours 😭🤧. I have been really battling with trying to render 3d Model Asteroids instead of red Meshes, and am having problems with Only accepting one unique item(Which means i’d have to load 10 different 4mb debris file 62 times every second PURELY ON THE FRONTEND, which would surely crash any browser in any computer lol. Severely Un-Optimised). Currently doing research On how to Handle that, Don’t wanna use gemini too much. Sadly, HackClub does not record time spent on research 😭"}, {"post_id": 60236, "ts": "2026-09-02T14:05:00Z", "hours": 2.1914, "text": "Changelog Add Debris component for visualizing debris in 3D space ( 20f3c78 ) Refactor collision detection to use dynamic debris field ( b07aa44 ) Added random coordinate generator for debris coordinates. ( 45ddcbf ) Basically, i have been working with generating debris coordinates, and Mesh visualizations for said Debris."}, {"post_id": 59950, "ts": "2026-09-02T00:43:08Z", "hours": 1.7517, "text": "Changelog Added 3d visualizations of the earth, and the ISS. ( 382c0e9 ) Basically, I Ditched the Nonsense Sphere Meshes, and added actual 3d models of the Earth and the ISS. I encountered several issues, Like scaling, and stuff. Had to make sure The ISS could be seen, While not being big enough to be a bother to the Earth. Ended up adding a glow to the satellite. Add 3D models for Earth and ISS with scaling logic"}, {"post_id": 59844, "ts": "2026-09-01T20:29:01Z", "hours": 1.5506, "text": "Changelog Added sattellite coordinates updates in the browser ( 81723a5 ) Init vanguard frontend with React and Vite setup ( a3f753c ) Started Adding the 3d implementation of a satellite(The ISS) orbiting the earth. For now, I have used Mesh spheres to test that my code works, before actually loading massive glb files. The Red satellite Mesh Sphere actually orbits the Blue Earth Mesh Sphere. THIS IS INTERESTING. NB: The prediction formula predicts the location of the ISS every second where one second is 90 seconds simulated."}, {"post_id": 59474, "ts": "2026-09-01T10:40:50Z", "hours": 0.7222, "text": "Changelog Implement WebSocket server for real-time trajectory updates. ( 6708b17 ) Basically, My RUST Program can now talk to my Browser console. It’s so cool. And it works over multiple Browsers Windows/Tabs too. Now I can add a frontend with those 3d models, and an infinite Zoomable Canvas. This is moving forward much faster than i thought."}, {"post_id": 59420, "ts": "2026-09-01T07:33:56Z", "hours": 0.9658, "text": "Changelog Added async support for frontend integration, And Used Tokio’s broadcast channel to pass messages between threads. ( daf47ad ) Okay, So…… I wanted a way to show my Output Outside if the terminal, and I chose to use a web browser, since I am already quite skilled in frontend web dev. Had to add 2 New crates. Tokio for Async/Await functions, and Axum for Web socket Functions. Had some fun reading through their documentations and Implementing Tokio’s Broadcast instead of mpsc ones. The reason i needed to change my broadcast method is cause mpsc is Single Consumer/Client, But multiple people might want to View the website at the same time"}, {"post_id": 59296, "ts": "2026-09-01T00:36:01Z", "hours": 0.6539, "text": "Changelog Implement collision detection in check_collision function using fake, Hardcoded debris coordinates ( 5b6b87f ) Okay, so I Hardcoded Debris Coordinates, and Compared it’s Predicted Coordinates to the Predicted Coordinates of My Sattelite. Cna now Predict Collision Chances, and Warn if They get too close. Also went on a Looking Spree, to Download 3d Models of Sattelites, Space Junk, and the Earth, To use in my Frontend, and Look at other Sites that do what I am aiming at like https://keeptrack.space , and https://cp4.rkas.net/?intldes=2007-012Q(Stuffin Space)."}, {"post_id": 59256, "ts": "2026-08-31T22:58:07Z", "hours": 0.3883, "text": "Changelog Added time tracking to the Telemetry state so the ISS can update coordinates based on time set. ( cf354ae ) Basically Made the Predicted Coordinates of the ISS change based on the amount of time that has passed(Simulates 90 minutes in 60 seconds)."}, {"post_id": 59133, "ts": "2026-08-31T19:18:10Z", "hours": 1.33, "text": "Changelog Add sgp4 and chrono dependencies; implement trajectory calculation for the ISS ( 4702ca4 ) Update telemetry handling and add orbital trajectory calculations ( 4cc8218 ) Basically, i can now track the Live position of the ISS, and Calculate/Predict it’s trajectory. Yay."}, {"post_id": 57691, "ts": "2026-08-29T22:39:05Z", "hours": 1.4156, "text": "Changelog Add telemetry models and refactor signal analysis and database saving functions ( 7aaf79a ) Threaded the analyse signal, and save to database functions too ( b37fc97 ) Added a thread to make sure the main loop runs without waiting for stuff… I guess ( 16c5881 ) Bad first commit. rectified ( 32b9e40 ) Basically Added Threading to the RUST Program to make sure stuff runs without waiting for something, And Multi File RUST Handling. Still only Infinitely Prints stuff to the terminal tho."}, {"post_id": 57359, "ts": "2026-08-29T14:15:58Z", "hours": 1.35, "text": "Changelog 4a6461d Basically, I wrote some functions, and a RUST struct with Mock telemetry data. Doesn’t do much rn, Just prints stuff to the terminal."}]...
|
Title: Vanguard SSA (Space Situational Awareness) Title: Vanguard SSA (Space Situational Awareness) by @SpaceRanger | Stardance
Devlogs:
Changelog 4a6461d Basically, I wrote some functions, and a RUST struct with Mock telemetry data. Doesn’t do much rn, Just prints stuff to the terminal.
Changelog Add telemetry models and refactor signal analysis and database saving functions ( 7aaf79a ) Threaded the analyse signal, and save to database functions too ( b37fc97 ) Added a thread to make sure the main loop runs without waiting for stuff… I guess ( 16c5881 ) Bad first commit. rectified ( 32b9e40 ) Basically Added Threading to the RUST Program to make sure stuff runs without waiting for something, And Multi File RUST Handling. Still only Infinitely Prints stuff to the terminal tho.
Changelog Add sgp4 and chrono dependencies; implement trajectory calculation for the ISS ( 4702ca4 ) Update telemetry handling and add orbital trajectory calculations ( 4cc8218 ) Basically, i can now track the Live position of the ISS, and Calculate/Predict it’s trajectory. Yay.
Changelog Added time tracking to the Telemetry state so the ISS can update coordinates based on time set. ( cf354ae ) Basically Made the Predicted Coordinates of the ISS change based on the amount of time that has passed(Simulates 90 minutes in 60 seconds).
Changelog Implement collision detection in check_collision function using fake, Hardcoded debris coordinates ( 5b6b87f ) Okay, so I Hardcoded Debris Coordinates, and Compared it’s Predicted Coordinates to the Predicted Coordinates of My Sattelite. Cna now Predict Collision Chances, and Warn if They get too close. Also went on a Looking Spree, to Download 3d Models of Sattelites, Space Junk, and the Earth, To use in my Frontend, and Look at other Sites that do what I am aiming at like https://keeptrack.space , and https://cp4.rkas.net/?intldes=2007-012Q(Stuffin Space).
Changelog Added async support for frontend integration, And Used Tokio’s broadcast channel to pass messages between threads. ( daf47ad ) Okay, So…… I wanted a way to show my Output Outside if the terminal, and I chose to use a web browser, since I am already quite skilled in frontend web dev. Had to add 2 New crates. Tokio for Async/Await functions, and Axum for Web socket Functions. Had some fun reading through their documentations and Implementing Tokio’s Broadcast instead of mpsc ones. The reason i needed to change my broadcast method is cause mpsc is Single Consumer/Client, But multiple people might want to View the website at the same time
Changelog Implement WebSocket server for real-time trajectory updates. ( 6708b17 ) Basically, My RUST Program can now talk to my Browser console. It’s so cool. And it works over multiple Browsers Windows/Tabs too. Now I can add a frontend with those 3d models, and an infinite Zoomable Canvas. This is moving forward much faster than i thought.
Changelog Added sattellite coordinates updates in the browser ( 81723a5 ) Init vanguard frontend with React and Vite setup ( a3f753c ) Started Adding the 3d implementation of a satellite(The ISS) orbiting the earth. For now, I have used Mesh spheres to test that my code works, before actually loading massive glb files. The Red satellite Mesh Sphere actually orbits the Blue Earth Mesh Sphere. THIS IS INTERESTING. NB: The prediction formula predicts the location of the ISS every second where one second is 90 seconds simulated.
Changelog Added 3d visualizations of the earth, and the ISS. ( 382c0e9 ) Basically, I Ditched the Nonsense Sphere Meshes, and added actual 3d models of the Earth and the ISS. I encountered several issues, Like scaling, and stuff. Had to make sure The ISS could be seen, While not being big enough to be a bother to the Earth. Ended up adding a glow to the satellite. Add 3D models for Earth and ISS with scaling logic
Changelog Add Debris component for visualizing debris in 3D space ( 20f3c78 ) Refactor collision detection to use dynamic debris field ( b07aa44 ) Added random coordinate generator for debris coordinates. ( 45ddcbf ) Basically, i have been working with generating debris coordinates, and Mesh visualizations for said Debris.
Changelog Replaced 250 dynamic debris with 10 Static Debris. ( 10a6f0a ) Sighs. I promise this is not all i did for nearly 2 hours 😭🤧. I have been really battling with trying to render 3d Model Asteroids instead of red Meshes, and am having problems with Only accepting one unique item(Which means i’d have to load 10 different 4mb debris file 62 times every second PURELY ON THE FRONTEND, which would surely crash any browser in any computer lol. Severely Un-Optimised). Currently doing research On how to Handle that, Don’t wanna use gemini too much. Sadly, HackClub does not record time spent on research 😭
Changelog Add Asteroid component and GLB model for 3D visualization ( f92bbd9 ) Yay 🥳🎉. Finally have the debris models showing up. They’re really small tho, so can’t really be seennn. Lemme make them a bit bigger Done.
Changelog Collision Detection now works on the frontend by changing to a red glow from a cyan glow. ( 81c0078 ) Okay, Massive W on this devlog. So I made collision detection show up on the frontend rather than just the Backend by enhancing my RUST functions to return a True or False value when collision is detected. I had some problems with that, cause RUST doesn’t do global variables, and trying to pass a variable from one function(The collision detector) To another(The trajectory calculation), to add a value to my struct was quite literally impossible. I had to delete one of my threads, and change my architecture from branching to linear. Oh, and I also changed the number of debris from 10 to 100, and the collision distance from 100km to 1000km to ensure collision will be detected lol.
Changelog Changed from Static data to live data using celestrak Starlink APIs. ( 4a27c90 ) Okay, so i HAVE been able to Change from Static data to live data using Celestrak Starlink APIs. Doing this inSo many problems like Chunking, Parsing, RUST async/await, and doing all of that over 500 3d models without frying my CPU. Now, even tho i have been able to get it actually showing up, I need to deal with Celestrak Rate limiting, and Separating Debris from Satellites(Currently, One of the satellite is chosen to be the Satellite, and the rest are set to debris lol). I’ll fix all of this Tomorrow, FOR NOW I HAVE TO SLEEP(My girlfriend got Mad i was not sleeping enough lol 😭😂). Also fixing Scaling, as these should NOT be this big compared to the earth lol.
Changelog Implement caching for live satellite data and adjust debris scaling for better visualization ( 0e71088 ) Okay, so remember in my last Devlog, i noted that Celestrak didn’t like me pinging their servers more than once every 2 hours, which crashes my RUST backend. So today i implemented Caching. Basically, How this works is, I check if there is a file named “active_satellites.txt”, if there is not, i go ahead and create one, and add all the satellite TLE data from Celestrak here. If there already was one, I check the MetaData for time modified, and if this is more than 2 hours, I ping Celestrak again, and Update the File with new data. If it is less than 2 hours tho, i go ahead and use the one i already HAD.
Changelog Updated program to include, and handle both satellite and debris Cache Data from Celestrak ( 1665273 ) Basically, Now I have 2 files of both Debris data and Satellite Data
Changelog tweaks and updates ( 7fc4786 ) Ported satellite data from backend, and introduced satellite component in frontend. ( b6b8e5d ) Meh. Frontend change. Not much.
A few different things have bugged me since last I Devlogged. For one, i’m not tntirely sure how to go on. What i need, to remove, and all. Secondly, everything is so Unorganized rn. So many debris and satellites Just swimming around in Orbit against a static Earth And everything doesn’t even scale properly. Lastly, I’ve tried to focus a bit more on Orging My own YSWS. Thank goodness stardance was extended(Expected, but thank goodness still).
Changelog Improve error handling for satellite and debris data fetching; adjust time step for simulation ( 7e7c487 ) Coming back to this after legit leaving it for One month 😭. Anyway, I fixed error handling for Cases where the user is not able to ping the Celestrak servers to get the data needed. Now It just falls back to the Cache. I also reduced the amount of time That goes by in app, to perfectly mirror the real world.
Changelog Trajectory calculation Now uses universal timestamp ( c842228 ) Okay, Because Celestrak tracks and updates satellite data at different times, The data from the API doesn’t actually reflect the current coordinates of the satellites, especially when compared to one another. While the specific orbits were accurate, The timing was completely random, and so, if 2 satellites were recorded in the same position, 6 hours apart, My simulation will start them in the same coordinate. This is obviously dangerously inaccurate. Fix: I removed the simulated “timestep” entirely, and Built the whole thing to Check current time, Check time the satellite’s data was recorded, and Simulate Orbit/Calculate trajectory and coordinates based on that. Problem with that is, without the timestep, My previous calculation for How fast this thing can run in relation to real word time will be totally wrong. I’ll fix that next.
Changelog Made the in App world go 60* faster than the normal time. ( be91922 ) Basically, 1 Normal second is 60 seconds in app. 1 Normal hour is 60 hours in app
Changelog configured 2 way channel websocket broadcast. can now receive info from the frontend ( 2500f28 ) Yeah. That’s all. “THAT’S ALL YOU DID FOR 2 HOURS 🙆♀️”. Yeah. Keep judging. Until you try to code in RUST 😑🙂
Well, you can now choose your own time multiplier from between the Real world, and the app. This part was(Mostly) gemini code. I suck at math, so I had it do the calculations and stuff. I also tried to Make the earth also spin in relation to the satellites using Julian Time mathematical calculations, But i’ve not been able to achieve that. Changelog git commit -m “choose time multiplier plus earth rotation” ( a585661 ) choose time multiplier plus earth rotation ( eca1623 )...
|
1792619376.7553356
|
1793224176.7553356
|
|
63134
|
productivity-tab by @satr14 | Stardance
|
satr14
|
0
|
3.92
|
0
|
[]
|
[{"post_id": 80676, "ts": "202 [{"post_id": 80676, "ts": "2026-10-18T13:44:19Z", "hours": 0.3494, "text": "okay well i slept for the day, prob not the best idea but oh well. last commit hash: 53397fab62e551b9828fefa448c84038b1c85004 ngl im happy with how the design ended up, still could use polish but its definitely a lot better. my main issue is that i always depended on catppuccin colors for my sites, but since i want user customizability, i needed to make things work with tailwind’s provided colors. added helper function to get current time formatted using intl api display time and moved motivation text to the background as big text improved styling with rounded corners, tweaked base colors, and less thick borders"}, {"post_id": 80410, "ts": "2026-10-17T15:37:52Z", "hours": 0.6478, "text": "honestly didnt have much energy, and this is a filler project. but i gotta get 11hr/week last commit hash: f2f34b36d4106a2b0e599bbdeb4466d5bfee9d0d hardest part is probably designing and theming. switched fonts again because it just didnt feel right. maybe its the text sizing, padding and spacing, or just something else. just cant find it yet. but the important part is to finish a raw prototype thats functional and make it look pretty later. added extra data to api fetcher function: sum and largest added a helper function for formatting raw integer seconds: hh mm ss rename variables to be more sensible + code cleanup switched font from jetbrains mono to inter implemented projects time spent display card using html table element ill probably try to theme this around hackatime’s webui theme so theres gonna be a lot of red for hackclub ;)"}, {"post_id": 78770, "ts": "2026-10-11T15:30:39Z", "hours": 0.9275, "text": "last commit hash: c8d25b899f7d860afa25c6f10b6b6a333f0bbf6a working on this after finishing most of my main projects. this might surpass the under 3h mark which may make letting go of the mission on this project necesarry for higher payout. modified fetch function to also get statusbar and goal information switched font to jetbrains mono display statusbar text and goal on the page modified fetch function to also calculate coding times by each day “just make it exists, polish later”"}, {"post_id": 74340, "ts": "2026-09-27T06:19:24Z", "hours": 0.4989, "text": "barely worked on this project for that long but anyways: made a helper function for generating dates in yyyy-mm-dd format for hackatime made a function to fetch hackatime tracked projects based of date offset provided data isnt used for visuals yet. all the creds are fetched from local storage"}, {"post_id": 73786, "ts": "2026-09-26T00:01:20Z", "hours": 0.9494, "text": "after a lot of school shenanigans, im gonna continue for this project: made a dotted bg (adapted from my website) as a fallback background when no bg is available made a center container for elements remove catppuccin for later user style customization dim background image for better text visibility added svelte state variables for inputs style tweaks to search bar search engine selection changed base color to tailwind’s stone remove ugly focus outline radial fade for background added onsubmit handler so now search bar works"}, {"post_id": 71542, "ts": "2026-09-21T01:13:43Z", "hours": 0.5447, "text": "well i got a bit tired on working on my main projects so im doing this side quest: init project with sveltekit, tailwind, and cloudflare create MIT license and basic README installed catppuccin for theming added background image element based of local storage made a file upload input for setting background theme and storing in local storage as data uri"}]...
|
Title: productivity-tab by @satr14 | Stardance
De Title: productivity-tab by @satr14 | Stardance
Devlogs:
well i got a bit tired on working on my main projects so im doing this side quest: init project with sveltekit, tailwind, and cloudflare create MIT license and basic README installed catppuccin for theming added background image element based of local storage made a file upload input for setting background theme and storing in local storage as data uri
after a lot of school shenanigans, im gonna continue for this project: made a dotted bg (adapted from my website) as a fallback background when no bg is available made a center container for elements remove catppuccin for later user style customization dim background image for better text visibility added svelte state variables for inputs style tweaks to search bar search engine selection changed base color to tailwind’s stone remove ugly focus outline radial fade for background added onsubmit handler so now search bar works
barely worked on this project for that long but anyways: made a helper function for generating dates in yyyy-mm-dd format for hackatime made a function to fetch hackatime tracked projects based of date offset provided data isnt used for visuals yet. all the creds are fetched from local storage
last commit hash: c8d25b899f7d860afa25c6f10b6b6a333f0bbf6a working on this after finishing most of my main projects. this might surpass the under 3h mark which may make letting go of the mission on this project necesarry for higher payout. modified fetch function to also get statusbar and goal information switched font to jetbrains mono display statusbar text and goal on the page modified fetch function to also calculate coding times by each day “just make it exists, polish later”
honestly didnt have much energy, and this is a filler project. but i gotta get 11hr/week last commit hash: f2f34b36d4106a2b0e599bbdeb4466d5bfee9d0d hardest part is probably designing and theming. switched fonts again because it just didnt feel right. maybe its the text sizing, padding and spacing, or just something else. just cant find it yet. but the important part is to finish a raw prototype thats functional and make it look pretty later. added extra data to api fetcher function: sum and largest added a helper function for formatting raw integer seconds: hh mm ss rename variables to be more sensible + code cleanup switched font from jetbrains mono to inter implemented projects time spent display card using html table element ill probably try to theme this around hackatime’s webui theme so theres gonna be a lot of red for hackclub ;)
okay well i slept for the day, prob not the best idea but oh well. last commit hash: 53397fab62e551b9828fefa448c84038b1c85004 ngl im happy with how the design ended up, still could use polish but its definitely a lot better. my main issue is that i always depended on catppuccin colors for my sites, but since i want user customizability, i needed to make things work with tailwind’s provided colors. added helper function to get current time formatted using intl api display time and moved motivation text to the background as big text improved styling with rounded corners, tweaked base colors, and less thick borders...
|
1793048075.8313005
|
1793652875.8313005
|
|
41892
|
My own site! by @jiya | Stardance
|
jiya
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T13:36:27Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "well my project is so simple its not so creative nor big and advance but i made it for checking up my 1 of dreams to make a person website its about dr stone character of sai nanami and senku who inspires me for programming and science or space love 😊 well the stickers and photo glows when touched", "repo": "https://github.com/yasmeenpapppy0-prog/deep-space", "demo": "https://yasmeenpapppy0-prog.github.io/deep-space"}]...
|
[{"post_id": 80669, "ts": "202 [{"post_id": 80669, "ts": "2026-10-18T13:27:06Z", "hours": 3.59, "text": "its an website about dr stone characters who inspired me and abut space to that hoow much i love space > < ^"}]...
|
Title: My own site! by @jiya | Stardance
Devlogs: Title: My own site! by @jiya | Stardance
Devlogs:
its an website about dr stone characters who inspired me and abut space to that hoow much i love space > < ^
Ships:
well my project is so simple its not so creative nor big and advance but i made it for checking up my 1 of dreams to make a person website its about dr stone character of sai nanami and senku who inspires me for programming and science or space love 😊 well the stickers and photo glows when touched...
|
1793155927.4745584
|
1793242327.4745584
|
|
69521
|
Basic Page Turner by @Partholimew | Stardance
|
Partholimew
|
0
|
2.67
|
0
|
[]
|
[{"post_id": 80666, "ts": "202 [{"post_id": 80666, "ts": "2026-10-18T13:12:53Z", "hours": 1.0333, "text": "Today I did the CAD for the enclosure of the Page Turner. All I have left to do is prep the files, finish the repo, and get cost estimates for all the parts! The case is structured to properly support the pcb over the battery and expose needed components."}, {"post_id": 80368, "ts": "2026-10-17T12:51:46Z", "hours": 0.8833, "text": "So today I made the firmware. You can swap between 4 different keymaps, repair BLE, turn the pages, and it even has a status LED that will display the current mode or pairing status. Now I just have to do the CAD and budgeting. Here’s a picture of the Schematic since a picture of code you can’t see all of unless you check the repo wouldn’t be that helpful."}, {"post_id": 79860, "ts": "2026-10-15T17:15:46Z", "hours": 0.7503, "text": "This is going to be a pretty short project, since it’s a fairly simple item. This is devlog 1 of 3-4 for the pre-funding part. I’m making a page-turner pedal with BLE. So it connects to the device you are using for sheet music, and when you press one of the buttons, it will turn the page. For this section, I made both the schematic and the PCB layout."}]...
|
Title: Basic Page Turner by @Partholimew | Stardan Title: Basic Page Turner by @Partholimew | Stardance
Devlogs:
This is going to be a pretty short project, since it’s a fairly simple item. This is devlog 1 of 3-4 for the pre-funding part. I’m making a page-turner pedal with BLE. So it connects to the device you are using for sheet music, and when you press one of the buttons, it will turn the page. For this section, I made both the schematic and the PCB layout.
So today I made the firmware. You can swap between 4 different keymaps, repair BLE, turn the pages, and it even has a status LED that will display the current mode or pairing status. Now I just have to do the CAD and budgeting. Here’s a picture of the Schematic since a picture of code you can’t see all of unless you check the repo wouldn’t be that helpful.
Today I did the CAD for the enclosure of the Page Turner. All I have left to do is prep the files, finish the repo, and get cost estimates for all the parts! The case is structured to properly support the pcb over the battery and expose needed components....
|
1792857077.8672545
|
1793461877.8672545
|
|
70328
|
nodupe by @deadbeef404 | Stardance
|
deadbeef404
|
0
|
0.41
|
0
|
[]
|
[{"post_id": 80664, "ts": "202 [{"post_id": 80664, "ts": "2026-10-18T13:12:20Z", "hours": 0.4122, "text": "I have completed the extension and it works perfectly. Now I will just test it to find if there are any problems or any thing I should add to this to make it better."}]...
|
Title: nodupe by @deadbeef404 | Stardance
Devlogs Title: nodupe by @deadbeef404 | Stardance
Devlogs:
I have completed the extension and it works perfectly. Now I will just test it to find if there are any problems or any thing I should add to this to make it better....
|
1792993981.1530242
|
1793598781.1530242
|
|
70331
|
anime battle arena by @chestagahlawat06 | Stardanc anime battle arena by @chestagahlawat06 | Stardance...
|
chestagahlawat06
|
1
|
11.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T13:03:41Z", "hours": 11.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i made a game where anime characters battle each other….", "repo": "https://github.com/chestagahlawat6-maker/anime-battle-arena", "demo": "https://anime-battle-arena-w8jv.vercel.app/"}]...
|
[{"post_id": 80661, "ts": "202 [{"post_id": 80661, "ts": "2026-10-18T13:01:33Z", "hours": 10.7028, "text": "hi i am working on a game… maybe …umm its made by css( a few lines because i dont know much about css), html and java script. Its not much impressive although"}]...
|
Title: anime battle arena by @chestagahlawat06 | S Title: anime battle arena by @chestagahlawat06 | Stardance
Devlogs:
hi i am working on a game… maybe …umm its made by css( a few lines because i dont know much about css), html and java script. Its not much impressive although
Ships:
i made a game where anime characters battle each other…....
|
1793155740.7869637
|
1793242140.7869637
|
|
61846
|
ArduCore — My Own Arduino Board by @Sammy_Uranus | ArduCore — My Own Arduino Board by @Sammy_Uranus | Stardance...
|
Sammy_Uranus
|
0
|
9.93
|
0
|
[]
|
[{"post_id": 80659, "ts": "202 [{"post_id": 80659, "ts": "2026-10-18T12:45:47Z", "hours": 1.2333, "text": "#Devlog 3 - SMD to THT I thought the SMD components were looking nice and clean until I thought that I won’t be able to solder such small microscopic components properly at all !! So I swapped it with THT components Below is the final view of Arducore PCB !! I hope it turns out good and working"}, {"post_id": 70762, "ts": "2026-09-19T18:36:05Z", "hours": 7.3403, "text": "#Devlog 2 — 7 Hours Later… I Built My Own Arduino 😭 Today was the big build day for ArduCore . I spent almost 7 hours designing and finishing my custom Arduino-style development board using the DIP ATmega328P . This isn’t using a ready-made Arduino board — I built the main circuit myself and had to figure out how all the important parts connect and work together. One thing I learned is that this board doesn’t have a built-in USB programmer , so I’ll need to use another Arduino as an ISP programmer/burner to upload the bootloader and program the ATmega328P. Today I: Finished the schematic Designed the PCB Worked through the component connections Figured out the ATmega328P DIP setup Finished the board design Recorded the whole ~ 7 hour build session And finally… ArduCore is complete! 🚀 Now comes the fun part — getting the actual hardware, programming it, and seeing if my board really works. 👀"}, {"post_id": 67552, "ts": "2026-09-13T18:07:57Z", "hours": 1.3539, "text": "#Devlog 1 — Starting My Own Arduino Board Today I officially Started working on my own custom Arduino style development board called ArduCore I started by Searching : What IC is used What each pin does Which Components are needed( incomplete yet ) I also started exploring` KiCad , trying out different tools and plugins to get familiar with the workflow. Of course, KiCad had to test my patience with a few “Not Responding” moments 😭💀 Still a lot to figure out, but the goal is to understand everything properly before I start designing the actual board. Day 1 done 🚀"}]...
|
Title: ArduCore — My Own Arduino Board by @Sammy_U Title: ArduCore — My Own Arduino Board by @Sammy_Uranus | Stardance
Devlogs:
#Devlog 1 — Starting My Own Arduino Board Today I officially Started working on my own custom Arduino style development board called ArduCore I started by Searching : What IC is used What each pin does Which Components are needed( incomplete yet ) I also started exploring` KiCad , trying out different tools and plugins to get familiar with the workflow. Of course, KiCad had to test my patience with a few “Not Responding” moments 😭💀 Still a lot to figure out, but the goal is to understand everything properly before I start designing the actual board. Day 1 done 🚀
#Devlog 2 — 7 Hours Later… I Built My Own Arduino 😭 Today was the big build day for ArduCore . I spent almost 7 hours designing and finishing my custom Arduino-style development board using the DIP ATmega328P . This isn’t using a ready-made Arduino board — I built the main circuit myself and had to figure out how all the important parts connect and work together. One thing I learned is that this board doesn’t have a built-in USB programmer , so I’ll need to use another Arduino as an ISP programmer/burner to upload the bootloader and program the ATmega328P. Today I: Finished the schematic Designed the PCB Worked through the component connections Figured out the ATmega328P DIP setup Finished the board design Recorded the whole ~ 7 hour build session And finally… ArduCore is complete! 🚀 Now comes the fun part — getting the actual hardware, programming it, and seeing if my board really works. 👀
#Devlog 3 - SMD to THT I thought the SMD components were looking nice and clean until I thought that I won’t be able to solder such small microscopic components properly at all !! So I swapped it with THT components Below is the final view of Arducore PCB !! I hope it turns out good and working...
|
1793040885.0138066
|
1793645685.0138066
|
|
56572
|
arcPad by @jorm | Stardance
|
jorm
|
0
|
23.62
|
0
|
[]
|
[{"post_id": 80655, "ts": "202 [{"post_id": 80655, "ts": "2026-10-18T12:33:51Z", "hours": 4.0678, "text": "finished modelling the case! I wanted to keep the design really compact (which was the reason why I redesigned the PCB earlier), so I decided not to use screws and secured the PCB with friction instead. The PCB is sandwiched between a base and a top plate, the PCB is secured to the top plate when the switches are attached, and the top plate secures to the base with some neat snap fit geometry (second pic). I made a little render to illustrate how it’ll look in the end, with the light bar as well."}, {"post_id": 80210, "ts": "2026-10-16T19:10:26Z", "hours": 4.9892, "text": "for some reason, I decided to change my macropad’s design, so I had to redo parts of the schematic and PCB. It’s now more compact, with one switch replaced by the rotary encoder, and 5 extra LEDs used as some sort of “progress bar” that I think would turn out pretty cool."}, {"post_id": 79858, "ts": "2026-10-15T17:05:16Z", "hours": 5.3056, "text": "finished pcb! designing and tracing the pcb was definitely the most enjoyable part of the process so far imo. i also imported all the step files and silkscreen into fusion, next up is designing a case!"}, {"post_id": 78790, "ts": "2026-10-11T16:39:28Z", "hours": 6.1658, "text": "made progress on the pcb! this was an oddly satisfying process, but took absolutely forever since I had to redo the LED traces at least 5 times. I ran a quick DRC after wiring everthing and got about 80 warnings and errors… tomorrow’s problem."}, {"post_id": 78094, "ts": "2026-10-09T15:26:49Z", "hours": 3.0908, "text": "finished the schematics (for now)! this took way longer than it should’ve, mainly because i have no clue what i’m doing, but i think it all works? next I have to check if it actually works as a pcb, and make sure it doesn’t exceed the max dimensions (100x100mm)"}]...
|
Title: arcPad by @jorm | Stardance
Devlogs:
finis Title: arcPad by @jorm | Stardance
Devlogs:
finished the schematics (for now)! this took way longer than it should’ve, mainly because i have no clue what i’m doing, but i think it all works? next I have to check if it actually works as a pcb, and make sure it doesn’t exceed the max dimensions (100x100mm)
made progress on the pcb! this was an oddly satisfying process, but took absolutely forever since I had to redo the LED traces at least 5 times. I ran a quick DRC after wiring everthing and got about 80 warnings and errors… tomorrow’s problem.
finished pcb! designing and tracing the pcb was definitely the most enjoyable part of the process so far imo. i also imported all the step files and silkscreen into fusion, next up is designing a case!
for some reason, I decided to change my macropad’s design, so I had to redo parts of the schematic and PCB. It’s now more compact, with one switch replaced by the rotary encoder, and 5 extra LEDs used as some sort of “progress bar” that I think would turn out pretty cool.
finished modelling the case! I wanted to keep the design really compact (which was the reason why I redesigned the PCB earlier), so I decided not to use screws and secured the PCB with friction instead. The PCB is sandwiched between a base and a top plate, the PCB is secured to the top plate when the switches are attached, and the top plate secures to the base with some neat snap fit geometry (second pic). I made a little render to illustrate how it’ll look in the end, with the light bar as well....
|
1792669786.425491
|
1793274586.425491
|
|
70274
|
Keycraft by @NexnReal | Stardance
|
NexnReal
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T12:43:40Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Keycraft is a local & offline password generator which generate secure passwords from 8 chars to 128 chars. It generate combinations of symbols, numbers, alphabets (lowercase, uppercase) and provide STRONG passwords. It is made in Python, with TKinter GUI and secrets. It is beginner-friendly, anybody who need strong passwords can use it. Keycraft is available in github releases as an .exe for windows users, for others, for now only .py is available. Keycraft solves the issue of NOT having strong passwords. The stronger, the better.", "repo": "https://github.com/NexnBased/Keycraft", "demo": "https://github.com/NexnBased/Keycraft/releases/"}]...
|
[{"post_id": 80653, "ts": "202 [{"post_id": 80653, "ts": "2026-10-18T12:31:06Z", "hours": 1.3556, "text": "Devlog 2 New Redesigned the UI Changed the colours Same layout but bigger and more readable More failsafe Custom-made ICON Icon Bug fixes"}, {"post_id": 80614, "ts": "2026-10-18T09:43:20Z", "hours": 2.6772, "text": "Devlog 1 Keycraft is a Local & Offline Password Generator made in Python Features From 8 to 128 Characters Simple UI Beginner-friendly Will generate passwords as much as you want Allows to copy passwords easily and separately"}]...
|
Title: Keycraft by @NexnReal | Stardance
Devlogs: Title: Keycraft by @NexnReal | Stardance
Devlogs:
Devlog 1 Keycraft is a Local & Offline Password Generator made in Python Features From 8 to 128 Characters Simple UI Beginner-friendly Will generate passwords as much as you want Allows to copy passwords easily and separately
Devlog 2 New Redesigned the UI Changed the colours Same layout but bigger and more readable More failsafe Custom-made ICON Icon Bug fixes
Ships:
Keycraft is a local & offline password generator which generate secure passwords from 8 chars to 128 chars. It generate combinations of symbols, numbers, alphabets (lowercase, uppercase) and provide STRONG passwords. It is made in Python, with TKinter GUI and secrets. It is beginner-friendly, anybody who need strong passwords can use it. Keycraft is available in github releases as an .exe for windows users, for others, for now only .py is available. Keycraft solves the issue of NOT having strong passwords. The stronger, the better....
|
1793224342.8848412
|
1793310742.8848412
|
|
70323
|
Fox Challenge by @Matuskas | Stardance
|
Matuskas
|
1
|
12.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T12:42:06Z", "hours": 12.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I created a 2D platformer in the style of Mario and Sonic. It’s a short game with no set ending, consisting of just two simple levels. The main character is a fox that faces challenges, defeats enemies, and collects gems and cherries. I’m proud to have been able to build this project and improve my programming skills; I hope to create more games like this in the future.", "repo": "https://github.com/MatuskasKenji/Fox-Challenge", "demo": "https://matuskas.itch.io/fox-challege"}]...
|
[{"post_id": 80652, "ts": "202 [{"post_id": 80652, "ts": "2026-10-18T12:18:54Z", "hours": 12.0664, "text": "Updating 0.2"}]...
|
Title: Fox Challenge by @Matuskas | Stardance
Dev Title: Fox Challenge by @Matuskas | Stardance
Devlogs:
Updating 0.2
Ships:
I created a 2D platformer in the style of Mario and Sonic. It’s a short game with no set ending, consisting of just two simple levels. The main character is a fox that faces challenges, defeats enemies, and collects gems and cherries. I’m proud to have been able to build this project and improve my programming skills; I hope to create more games like this in the future....
|
1793155738.997108
|
1793242138.997108
|
|
68669
|
Ultron by @Hamstersarus | Stardance
|
Hamstersarus
|
0
|
10.67
|
0
|
[]
|
[{"post_id": 80650, "ts": "202 [{"post_id": 80650, "ts": "2026-10-18T12:08:32Z", "hours": 1.3297, "text": "Created a website for downloading the app"}, {"post_id": 80554, "ts": "2026-10-18T04:36:01Z", "hours": 0.8222, "text": "Made some more progress on the website, added ultron to it"}, {"post_id": 80531, "ts": "2026-10-18T01:51:43Z", "hours": 0.8664, "text": "Started working on the website for the demo and instructions and stuff."}, {"post_id": 80494, "ts": "2026-10-17T21:03:34Z", "hours": 2.2031, "text": "Ultron moves around the screen, the text scrolls in and the mouth moves like its talking."}, {"post_id": 80314, "ts": "2026-10-17T07:34:32Z", "hours": 1.6472, "text": "So a lot of progress was made… I added the AI and it works which is great! Also, I wrote instructions for the user to add an api key but I’ll make more concise instructions later."}, {"post_id": 79691, "ts": "2026-10-15T02:28:50Z", "hours": 0.8586, "text": "Started working on integrating an ai (Newmatron) and some answers that it can give if something breaks. I also gave it a little backstory type thing so that it stays in character (I may be a little bit of a larper but I know mostly what the character is)."}, {"post_id": 79423, "ts": "2026-10-13T22:30:04Z", "hours": 0.5667, "text": "Added a blinking animation and a thinking sprite and talking (I lost wifi mid drawing so not all of it was recorded). Next I gotta give it a brain (connect it to some ai.. maybe claude??). Not sure yet what I’ll do so research time!! Going into projects without planning is so fun :)"}, {"post_id": 79209, "ts": "2026-10-13T01:31:25Z", "hours": 1.3064, "text": "Created a way to actually chat with it (even if it won’t talk back… and its just a grey box). Progress!!!"}, {"post_id": 78236, "ts": "2026-10-10T02:33:30Z", "hours": 1.0689, "text": "Set up Electron app with a basic window"}]...
|
Title: Ultron by @Hamstersarus | Stardance
Devlog Title: Ultron by @Hamstersarus | Stardance
Devlogs:
Set up Electron app with a basic window
Created a way to actually chat with it (even if it won’t talk back… and its just a grey box). Progress!!!
Added a blinking animation and a thinking sprite and talking (I lost wifi mid drawing so not all of it was recorded). Next I gotta give it a brain (connect it to some ai.. maybe claude??). Not sure yet what I’ll do so research time!! Going into projects without planning is so fun :)
Started working on integrating an ai (Newmatron) and some answers that it can give if something breaks. I also gave it a little backstory type thing so that it stays in character (I may be a little bit of a larper but I know mostly what the character is).
So a lot of progress was made… I added the AI and it works which is great! Also, I wrote instructions for the user to add an api key but I’ll make more concise instructions later.
Ultron moves around the screen, the text scrolls in and the mouth moves like its talking.
Started working on the website for the demo and instructions and stuff.
Made some more progress on the website, added ultron to it
Created a website for downloading the app...
|
1793123557.249588
|
1793728357.249588
|
|
70321
|
Brain Tumor Detectionnn by @akanksha | Stardance
|
akanksha
|
0
|
0.97
|
0
|
[]
|
[{"post_id": 80649, "ts": "202 [{"post_id": 80649, "ts": "2026-10-18T12:05:54Z", "hours": 0.9697, "text": "Analysed Dataset Format Architecture"}]...
|
Title: Brain Tumor Detectionnn by @akanksha | Star Title: Brain Tumor Detectionnn by @akanksha | Stardance
Devlogs:
Analysed Dataset Format Architecture...
|
1792993976.4505124
|
1793598776.4505124
|
|
70016
|
My awesome macropad! by @dolphin | Stardance
|
dolphin
|
0
|
0.43
|
0
|
[]
|
[{"post_id": 80646, "ts": "202 [{"post_id": 80646, "ts": "2026-10-18T11:55:24Z", "hours": 0.4258, "text": "Completed the design phase for my custom Dolphin Macropad! Designed schematic & routed 2-layer PCB in KiCad with 0 errors, ground planes, and custom silkscreen artwork. Modeled 2-piece enclosure in Fusion 360 with cutouts for Cherry MX switches, EC11 rotary knob, OLED screen, USB-C port, engraved Dolphin logo, and corner fillets. Configured KMK CircuitPython firmware on Seeed XIAO RP2040. Production Gerbers and STLs ready on GitHub: https://github.com/vish341-5/dolphin-hackpad"}]...
|
Title: My awesome macropad! by @dolphin | Stardanc Title: My awesome macropad! by @dolphin | Stardance
Devlogs:
Completed the design phase for my custom Dolphin Macropad! Designed schematic & routed 2-layer PCB in KiCad with 0 errors, ground planes, and custom silkscreen artwork. Modeled 2-piece enclosure in Fusion 360 with cutouts for Cherry MX switches, EC11 rotary knob, OLED screen, USB-C port, engraved Dolphin logo, and corner fillets. Configured KMK CircuitPython firmware on Seeed XIAO RP2040. Production Gerbers and STLs ready on GitHub: https://github.com/vish341-5/dolphin-hackpad...
|
1792957949.6101897
|
1793562749.6101897
|
|
23084
|
StarBrowser by @jphwb | Stardance
|
jphwb
|
1
|
23.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T12:01:14Z", "hours": 23.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a web browser from scratch in Rust. I made my own networking code, it can fetch HTTP and HTTPS websites, and it can parse the HTML itself. The challenging part was getting the websites to actually show up since everytime I tried to get it to work it kept showing No Response. I was able to fix this by rewriting my client.rs file and changing the way the app connects to websites. I am proud of this whole thing as I was still a sort of ‘intermediate beginner’ to rust but I got the hang of it by watching a bunch of youtube videos at 3am in the morning and learning from w3schools as well as getting documentation from the Mozilla docs. To run the project you just need to run the windows exe. For macOS and Linux I cannot test those executables so I am not 100% sure but the windows exe works. Just make sure that on some websites like google.com you need the www subdomain first. All websites require http:// or https:// at the start. Other websites like github.com dont need the www. I was initially going to add working CSS styling however due to Stardance ending soon and I was on holiday for majority of the time I just didn’t have time.", "repo": "https://github.com/jphwba/StarBrowser", "demo": "https://github.com/jphwba/StarBrowser/releases/tag/v1.0.0"}]...
|
[{"post_id": 80645, "ts": "202 [{"post_id": 80645, "ts": "2026-10-18T11:52:41Z", "hours": 1.6633, "text": "This is a short change, initially I was working on making working CSS styling however I don’t have the time for it so all I did was create a release workflow (which took longer than expected) and I made a README going through all the features and limitations as well as a rundown of the app. I have made 3 executables. One for Windows, Linux and MacOS. All are x86_64 not ARM. I am unable to test the Linux and MacOS executables however the windows one works."}, {"post_id": 79769, "ts": "2026-10-15T10:04:18Z", "hours": 4.1039, "text": "First in the UI and Rendering architecture I added a 2010 style chrome colour palette. I also implemented new vertex, rect and ui structs with layout_ui() to calculate and position the tab strip, address bat, navi buttons and the content viewport. I also made a new WGSL shader pipeline and vertex buffer for rendering flat colour rectangles. I then added normalise_url(), fetch_page(), navigate(), go_history() and reload(). Then I updated the core State struct, removed the raw display_text stering and replaced it with rectangle pipelines, address input state, focus flags, document title tracking, history stacks, scroll offsets and mouse tracking. I rewrote window_event() and app resume logic to handle the mouse movements, vlivks, wheel scrolling and keyboard typing including Enter backspace and shortcuts with ctrl and alt. I also removed the esc to quit application and it now just refocuses onto the addrtess bar. And render() draws the UI rectabgles first, then the address text, tabs buttons and page text with clipping and scroll offsets on a white background. I also made a new HTML Parser module. With tokenisation and scanning, it includfes void/raw text element lists, entitity decoding with &, &nbdp, etc, character scanning and attribute parsing. parse() constructs the existing HTMLDocument and HTMLNode types from client.rs which handles comments, doctypes, closing tags and script/style. With DOM Utils it includfes is_block_level(), extract_visible_text() which skips , , and tags while infecting liner breaks around block elements and nodewalking and title extraction (find_title()). I also deleted cssrom.rs whcih I originally had plans for but I just merged them into parser.rs and cascade.rs. My current limitations are rendering since the pages only display as plain text so no images, hyperlinks, styling or CSS in general. There is also network bliocking where page fetching is synchronus and blocks the UI window while loading."}, {"post_id": 77540, "ts": "2026-10-07T12:06:19Z", "hours": 8.0286, "text": "I can guarantee you I am not dead even though its been like 3 months. I build about the entire css engine. I can now display the web page’s html onto the app. In the app you can’t scroll down as I still need to implement that but this is progress. A lot of the functionality is there in my code but it is unused since I need to do a whole lot more work on it but this devlog is already 8 hours and I don’t want to go over 10 so I’m making a devlog here. tokenise.rs is a css level 3 tokeniser and is pretty much the architecture. units.rs is just simple unit and angle conversion. colour.rs is just colour parsing. colours.rs is mostly just the colour-name hex table. selectors.rs is the full selector parser. parser.rs is the component valuesa dn declarations into a Stylesheet model. cascade.rs matches an element against a stylesheet and sorts it by specificity/order. box_model.rs and layout.rs just set the layout of the app’s edges/borders/padding/margin and a block-layout pass decoupled from font types that dont exist in the app natively. I would write a lot more and style the devlog better but this new stardance thing with the animations everywhere make it almost impossible to type properly and I’m on a gaming laptop"}, {"post_id": 16945, "ts": "2026-06-27T14:50:30Z", "hours": 2.6572, "text": "Added Protocol::connect_tls() method using rustls::StreamOwned<rustls::ClientConnection, TcpStream>. Created AllowAnyVerifier implementing rustls::client::danger::ServerCertVerifier to accept any certificate AddedClient::connect_tls() that loads ca-certificates.crt if present otherwise falls back to system certs TLS now works for HTTP1_1 and HTTP2_0 protocols New DNSCache struct with Arc<Mutex<HashMap<String, DNSCacheEntry»> thread-safe, TTL-based DNSCacheEntry stores resolved SocketAddr list + expiry timestamp resolve_dns() now uses trust_dns_resolver::Resolver::from_system_conf() for proper DNS lookups, with fallback to ToSocketAddrs parse_url() extracts the host, port, and TLS flag from http:// or https:// URLs Handles explicit ports (example.com:8080) and defaults (80/443) connect_to() now calls resolve_and_connect() which uses DNS cache + TLS decision logic Client now tracks redirect_count send_request() detects 3xx status codes, reads location header, and follows redirects HTMLTag -enum of all standard HTML5 tags HTMLAttribute -name/value pairs HTMLNode - tag + attributes + children + optional text content HTMLDocument -doctype + root node HTMLTag::from_string() - case-insensitive parser for all tags"}, {"post_id": 14312, "ts": "2026-06-23T12:16:35Z", "hours": 1.6106, "text": "I added text rendering to the wgpu window so it displays the HTTP status code instead of just printing it to the console. The window now shows “Status: 200” (or whatever the server returns)"}, {"post_id": 13879, "ts": "2026-06-22T19:03:58Z", "hours": 2.2364, "text": "I added response decoding and support for http0.9 1.0 and 1.1. These guides: browser.engineering , firefox guides and servo were amazing resources for learning how HTTP works and with encoding/decoding requests and responses. I mostly just followed along with how firefox worked and built my way away from it but the code formatting went a bit off in the middle (it was 4:30am I have an exam in 4 hours I was tired) Next I want to print everything in the UI instead of terminal"}, {"post_id": 13080, "ts": "2026-06-21T12:20:07Z", "hours": 0.5225, "text": "Added the initial browser engine foundataion. I added basic support for http protocol and implemented http request encoding."}, {"post_id": 13036, "ts": "2026-06-21T10:04:14Z", "hours": 2.2739, "text": "I created the basic app here but it just shows a colour right now. I was following a tutorial on basic rust because I’m still learning it."}]...
|
Title: StarBrowser by @jphwb | Stardance
Devlogs: Title: StarBrowser by @jphwb | Stardance
Devlogs:
I created the basic app here but it just shows a colour right now. I was following a tutorial on basic rust because I’m still learning it.
Added the initial browser engine foundataion. I added basic support for http protocol and implemented http request encoding.
I added response decoding and support for http0.9 1.0 and 1.1. These guides: browser.engineering , firefox guides and servo were amazing resources for learning how HTTP works and with encoding/decoding requests and responses. I mostly just followed along with how firefox worked and built my way away from it but the code formatting went a bit off in the middle (it was 4:30am I have an exam in 4 hours I was tired) Next I want to print everything in the UI instead of terminal
I added text rendering to the wgpu window so it displays the HTTP status code instead of just printing it to the console. The window now shows “Status: 200” (or whatever the server returns)
Added Protocol::connect_tls() method using rustls::StreamOwned<rustls::ClientConnection, TcpStream>. Created AllowAnyVerifier implementing rustls::client::danger::ServerCertVerifier to accept any certificate AddedClient::connect_tls() that loads ca-certificates.crt if present otherwise falls back to system certs TLS now works for HTTP1_1 and HTTP2_0 protocols New DNSCache struct with Arc<Mutex<HashMap<String, DNSCacheEntry»> thread-safe, TTL-based DNSCacheEntry stores resolved SocketAddr list + expiry timestamp resolve_dns() now uses trust_dns_resolver::Resolver::from_system_conf() for proper DNS lookups, with fallback to ToSocketAddrs parse_url() extracts the host, port, and TLS flag from http:// or https:// URLs Handles explicit ports (example.com:8080) and defaults (80/443) connect_to() now calls resolve_and_connect() which uses DNS cache + TLS decision logic Client now tracks redirect_count send_request() detects 3xx status codes, reads location header, and follows redirects HTMLTag -enum of all standard HTML5 tags HTMLAttribute -name/value pairs HTMLNode - tag + attributes + children + optional text content HTMLDocument -doctype + root node HTMLTag::from_string() - case-insensitive parser for all tags
I can guarantee you I am not dead even though its been like 3 months. I build about the entire css engine. I can now display the web page’s html onto the app. In the app you can’t scroll down as I still need to implement that but this is progress. A lot of the functionality is there in my code but it is unused since I need to do a whole lot more work on it but this devlog is already 8 hours and I don’t want to go over 10 so I’m making a devlog here. tokenise.rs is a css level 3 tokeniser and is pretty much the architecture. units.rs is just simple unit and angle conversion. colour.rs is just colour parsing. colours.rs is mostly just the colour-name hex table. selectors.rs is the full selector parser. parser.rs is the component valuesa dn declarations into a Stylesheet model. cascade.rs matches an element against a stylesheet and sorts it by specificity/order. box_model.rs and layout.rs just set the layout of the app’s edges/borders/padding/margin and a block-layout pass decoupled from font types that dont exist in the app natively. I would write a lot more and style the devlog better but this new stardance thing with the animations everywhere make it almost impossible to type properly and I’m on a gaming laptop
First in the UI and Rendering architecture I added a 2010 style chrome colour palette. I also implemented new vertex, rect and ui structs with layout_ui() to calculate and position the tab strip, address bat, navi buttons and the content viewport. I also made a new WGSL shader pipeline and vertex buffer for rendering flat colour rectangles. I then added normalise_url(), fetch_page(), navigate(), go_history() and reload(). Then I updated the core State struct, removed the raw display_text stering and replaced it with rectangle pipelines, address input state, focus flags, document title tracking, history stacks, scroll offsets and mouse tracking. I rewrote window_event() and app resume logic to handle the mouse movements, vlivks, wheel scrolling and keyboard typing including Enter backspace and shortcuts with ctrl and alt. I also removed the esc to quit application and it now just refocuses onto the addrtess bar. And render() draws the UI rectabgles first, then the address text, tabs buttons and page text with clipping and scroll offsets on a white background. I also made a new HTML Parser module. With tokenisation and scanning, it includfes void/raw text element lists, entitity decoding with &, &nbdp, etc, character scanning and attribute parsing. parse() constructs the existing HTMLDocument and HTMLNode types from client.rs which handles comments, doctypes, closing tags and script/style. With DOM Utils it includfes is_block_level(), extract_visible_text() which skips , , and tags while infecting liner breaks around block elements and nodewalking and title extraction (find_title()). I also deleted cssrom.rs whcih I originally had plans for but I just merged them into parser.rs and cascade.rs. My current limitations are rendering since the pages only display as plain text so no images, hyperlinks, styling or CSS in general. There is also network bliocking where page fetching is synchronus and blocks the UI window while loading.
This is a short change, initially I was working on making working CSS styling however I don’t have the time for it so all I did was create a release workflow (which took longer than expected) and I made a README going through all the features and limitations as well as a rundown of the app. I have made 3 executables. One for Windows, Linux and MacOS. All are x86_64 not ARM. I am unable to test the Linux and MacOS executables however the windows one works.
Ships:
I made a web browser from scratch in Rust. I made my own networking code, it can fetch HTTP and HTTPS websites, and it can parse the HTML itself. The challenging part was getting the websites to actually show up since everytime I tried to get it to work it kept showing No Response. I was able to fix this by rewriting my client.rs file and changing the way the app connects to websites. I am proud of this whole thing as I was still a sort of ‘intermediate beginner’ to rust but I got the hang of it by watching a bunch of youtube videos at 3am in the morning and learning from w3schools as well as getting documentation from the Mozilla docs. To run the project you just need to run the windows exe. For macOS and Linux I cannot test those executables so I am not 100% sure but the windows exe works. Just make sure that on some websites like google.com you need the www subdomain first. All websites require http:// or https:// at the start. Other websites like github.com dont need the www. I was initially going to add working CSS styling however due to Stardance ending soon and I was on holiday for majority of the time I just didn’t have time....
|
1793155931.340221
|
1793242331.340221
|
|
22203
|
TejOS by @yadavtejas1947 | Stardance
|
yadavtejas1947
|
1
|
8.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T11:41:22Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I got lots of help from the guide so shout out to Amber for making that guide. The most challenging part was the CSS because I really don’t like CSS. Tweaking stuff, borders, and padding was quite difficult. I’m really proud. People should test my project in any kind of way they want and give me a review.", "repo": "https://github.com/yadavtejas1947-eng/TejOS", "demo": "https://tejos.onrender.com/"}]...
|
[{"post_id": 80641, "ts": "202 [{"post_id": 80641, "ts": "2026-10-18T11:38:04Z", "hours": 0.4567, "text": "Final tweaks and checks before the ship.."}, {"post_id": 33582, "ts": "2026-07-23T17:00:41Z", "hours": 2.8411, "text": "Day - 04 : 23-07-2026 After a quite a long break I restarted work on this project . Today I made some significant changes to the OS. First of all I add a draggable window to the OS , which is essentially a welcome screen which opens up whenever to start the OS . I was working on this feature some past 2-3days but couldn’t finish it together . So , Today I did that . Also I made that window closeable and openable which was a headache , because I don’t know JavaScript so I had to go through tutorials and Claude to help me fix every bug . So , that’s it for today ."}, {"post_id": 28469, "ts": "2026-07-14T18:36:19Z", "hours": 0.9064, "text": "Day - 03 : 15-07-2026 Today I didn’t made a significant progress but still managed to make the best out of my time. Firstly I added a better wallpaper for my OS , added a bottom bar and styled it a little , added a proper functioning clock and date which refreshes every second , I made it using basic JavaScript(JS)."}, {"post_id": 27842, "ts": "2026-07-13T18:42:39Z", "hours": 1.2642, "text": "Day -02 : 14-07-2026 I know their is a very significant gap between my first and second devlog of this project , that is because I had to travel out of town for two weeks , I promise myself that I’ll be consistent from today.. So , nothing much progress ,just added a topbar , added translucency to it and fixed my broken CSS code and rewrite the whole CSS script , so it took a lot of my time. The biggest challenge I face while working on websites is that I don’t understand the positioning and placement of divs , I’ll take a tutorial before working from tomorrow ….."}, {"post_id": 16893, "ts": "2026-06-27T12:47:19Z", "hours": 2.5186, "text": "Day - 01 : 27-06-2026 Today was the first day of building my own OS . First I revised over some basic HTML and CSS concepts because I haven’t touched these since 2024 . Then following the tutorial I made the basic page , added some image , fonts , background color and borders. I struggled with the CSS at first but then I managed to make the basic page in about 1hr 30mins , I know its a lot but going over StackOverflow , Youtube , Chatgpt , Claude takes time . I didn’t copied the code , just understood and then applied it into my project. So this was it for today ThankYou……"}]...
|
Title: TejOS by @yadavtejas1947 | Stardance
Devlo Title: TejOS by @yadavtejas1947 | Stardance
Devlogs:
Day - 01 : 27-06-2026 Today was the first day of building my own OS . First I revised over some basic HTML and CSS concepts because I haven’t touched these since 2024 . Then following the tutorial I made the basic page , added some image , fonts , background color and borders. I struggled with the CSS at first but then I managed to make the basic page in about 1hr 30mins , I know its a lot but going over StackOverflow , Youtube , Chatgpt , Claude takes time . I didn’t copied the code , just understood and then applied it into my project. So this was it for today ThankYou……
Day -02 : 14-07-2026 I know their is a very significant gap between my first and second devlog of this project , that is because I had to travel out of town for two weeks , I promise myself that I’ll be consistent from today.. So , nothing much progress ,just added a topbar , added translucency to it and fixed my broken CSS code and rewrite the whole CSS script , so it took a lot of my time. The biggest challenge I face while working on websites is that I don’t understand the positioning and placement of divs , I’ll take a tutorial before working from tomorrow …..
Day - 03 : 15-07-2026 Today I didn’t made a significant progress but still managed to make the best out of my time. Firstly I added a better wallpaper for my OS , added a bottom bar and styled it a little , added a proper functioning clock and date which refreshes every second , I made it using basic JavaScript(JS).
Day - 04 : 23-07-2026 After a quite a long break I restarted work on this project . Today I made some significant changes to the OS. First of all I add a draggable window to the OS , which is essentially a welcome screen which opens up whenever to start the OS . I was working on this feature some past 2-3days but couldn’t finish it together . So , Today I did that . Also I made that window closeable and openable which was a headache , because I don’t know JavaScript so I had to go through tutorials and Claude to help me fix every bug . So , that’s it for today .
Final tweaks and checks before the ship..
Ships:
I got lots of help from the guide so shout out to Amber for making that guide. The most challenging part was the CSS because I really don’t like CSS. Tweaking stuff, borders, and padding was quite difficult. I’m really proud. People should test my project in any kind of way they want and give me a review....
|
1793199156.3075511
|
1793285556.3075511
|
|
70292
|
Personal Website by @HostApple | Stardance
|
HostApple
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-19T13:27:14Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a personal website with floating elements that say stuff about me and serve a cool idea . Some parts of javascript and HTML were confusing so i too Ai assistance . I tried my best to fully polish this website . There are alot of sections including - about me , my spotify playlist , memories / meme section , little note section etc. Thank you.", "repo": "https://github.com/HostApple/Draghstple", "demo": "https://hostapple.github.io/Draghstple/"}]...
|
[{"post_id": 80640, "ts": "202 [{"post_id": 80640, "ts": "2026-10-18T11:25:06Z", "hours": 0.6936, "text": "ALMOST FINISHED"}, {"post_id": 80620, "ts": "2026-10-18T10:13:29Z", "hours": 0.3703, "text": "coming together"}, {"post_id": 80607, "ts": "2026-10-18T09:20:16Z", "hours": 0.5525, "text": "the starting is always slow"}]...
|
Title: Personal Website by @HostApple | Stardance
Title: Personal Website by @HostApple | Stardance
Devlogs:
the starting is always slow
coming together
ALMOST FINISHED
Ships:
I made a personal website with floating elements that say stuff about me and serve a cool idea . Some parts of javascript and HTML were confusing so i too Ai assistance . I tried my best to fully polish this website . There are alot of sections including - about me , my spotify playlist , memories / meme section , little note section etc. Thank you....
|
1793116186.3488255
|
1793202586.3488255
|
|
69166
|
RADAR SYSTEM USING ARDUINO UNO by @damu_7341 | Sta RADAR SYSTEM USING ARDUINO UNO by @damu_7341 | Stardance...
|
damu_7341
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T16:41:16Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I WAS CURIOUS ABOUT IT’S WORKING CONDITION.TO TEST IT I MADE IT.THE CHALLENGING PART WAS THE CODING,CONNECTIONS,TIMELAPSE. DURING THE TIME LAPSE DUE TO OVERHEAT OF THE SYSTEM I GOT BURNS TO MY FINGER TIPS,BE CAREFUL. SPENT 4 SLEEPLESS NIGHTS FOR THIS PROJECT. PEOPLE CAN KNOW HOW A RADAR SYSTEM IN AIR TRAFFIC CONTROL(ATC),MILITARY, AIRFORCE,NAVY ACTUALLY WORK. EASY TO BUILD,HARD TO MANAGE. GOOD LUCK 🤞 AND HAVE A TRY ..", "repo": "https://github.com/damu7341/damu.7341-gmail.com", "demo": ""}]...
|
[{"post_id": 80632, "ts": "202 [{"post_id": 80632, "ts": "2026-10-18T10:54:22Z", "hours": 2.6186, "text": "I AM ACTUALLY WORKING ON A HARD WARE PROJECT USING ARDUINO UNO,ULTRA SONIC SENSOR,SERVI MOTOR;THESE ARE ALSO BUDGET FRIENDLY ITEMS…(BE CAREFUL, WHILE WORKING LONG TIME SYSTEM MIGHT OVER HEAR)"}]...
|
Title: RADAR SYSTEM USING ARDUINO UNO by @damu_734 Title: RADAR SYSTEM USING ARDUINO UNO by @damu_7341 | Stardance
Devlogs:
I AM ACTUALLY WORKING ON A HARD WARE PROJECT USING ARDUINO UNO,ULTRA SONIC SENSOR,SERVI MOTOR;THESE ARE ALSO BUDGET FRIENDLY ITEMS…(BE CAREFUL, WHILE WORKING LONG TIME SYSTEM MIGHT OVER HEAR)
Ships:
I WAS CURIOUS ABOUT IT’S WORKING CONDITION.TO TEST IT I MADE IT.THE CHALLENGING PART WAS THE CODING,CONNECTIONS,TIMELAPSE. DURING THE TIME LAPSE DUE TO OVERHEAT OF THE SYSTEM I GOT BURNS TO MY FINGER TIPS,BE CAREFUL. SPENT 4 SLEEPLESS NIGHTS FOR THIS PROJECT. PEOPLE CAN KNOW HOW A RADAR SYSTEM IN AIR TRAFFIC CONTROL(ATC),MILITARY, AIRFORCE,NAVY ACTUALLY WORK. EASY TO BUILD,HARD TO MANAGE. GOOD LUCK 🤞 AND HAVE A TRY .....
|
1793155897.901844
|
1793242297.901844
|
|
41369
|
Duos by @winwon23 | Stardance
|
winwon23
|
0
|
69.04
|
0
|
[]
|
[{"post_id": 80630, "ts": "202 [{"post_id": 80630, "ts": "2026-10-18T10:46:02Z", "hours": 9.1008, "text": "Devlog #13 - New maps! Progress TLDR: I made 3 new maps that replace the old test map, being indoor, forest and beach, which are all super cool, and I’ve started working on the tutorial. 2 of the 3 new maps (forrest and beach) were made via the terrain feature so I have some nice landscape for both, but I decided to keep them relatively simple The indoor map looks kinda scary like backrooms vibes which idk about, I’m not that great with lighting and stuff, and it also has a super cursed ground texture if you look outside of the indoor area… The tutorial is going along pretty well without much trouble and so far you can learn to bump and to set which is nice What’s next? As mentioned previously, I’m going to work on the scoring and graphics, and obv I want to get the tutorial done ASAP I’ll also add free practice mode bc I get that the game will probably be kinda hard for beginners I don’t have enough time in Stardance left to make cool multiplayer or even local multiplayer or difficulties, so those will come in a future event, hopefully Terra if I can stay consistent."}, {"post_id": 78015, "ts": "2026-10-09T06:46:59Z", "hours": 6.3503, "text": "Devlog #12 - New screens! Progress TLDR: I made a new splash, menu, and settings screen on the same canvas using a separate script to switch between the pages, with a transition! I’m genuinely super excited bc Duos is starting to turn into like an actual game. I used Canva to handmake all my assets and stuff which was a bit of a trek bc it doesn’t get counted toward hours but it was worth it bc the design is original I used separate scripts for buttons to enlarge on hover, dot ribbons to scroll across, and to change the text on the different modes This took quite a while since I’ve never really done much in UI other than like a basic button/canvas, so I’m pretty proud of what I’ve done. Also, I hit 60 hrs on Duos What’s next? I’m gonna work on the three maps, indoor, beach, and forrest, which should be pretty easy I’m then going to implement some graphics, so like a UI scoreboard and setboard(idk is that a thing lol) I’m also going to make the 3rd person view way better, it’s really impractical rn, I’m thinking like just volleyball style (new vb game that came out recently) Side note I’m coming close to shipping, I was previously trying to work up to 44 hrs but I realised I should probably get maybe 60-70 hrs to be safe, bc I really want to get the Bambu Lab A1 Mini…"}, {"post_id": 77239, "ts": "2026-10-06T07:44:01Z", "hours": 8.3558, "text": "Devlog #11 - Point distribution and new loading screen (?) Progress TLDR: I finished a ground detection system that sees when the ball hits the ground and gives appropriate pts. I’m also working on a new pre-menu/splash screen! The ground detection system uses a collider check that looks for when the ball hits the ground and sees where the ball was last and the last player to touch the ball, giving points accordingly There were issues with ground hits giving double points because the ball would bounce, so I had to add a cooldown that prevented this The ground hitting detection made me realise the bots kept letting the ball hit the ground first , so I had to fix that up by getting bots to hit earlier which I did by reducing hit cooldown (idk why it worked) I’m also working on a new splash screen! (check below) What’s next? Hopefully I can get the splash screen done fairly quickly now that I think I’ve finalised a design I want to make a menu screen and a tutorial I’m going to add some kind of animations for the characters I’ll also eventually add some sort of score-keeping graphics and animations"}, {"post_id": 75164, "ts": "2026-09-29T10:52:48Z", "hours": 8.5981, "text": "Devlog #10 - Gameplay systems Progress TLDR: Fine tuned bot spikes to be more consistent with a diff system, made a starting serving procedure I’m not kidding when I say I must’ve spent like 4 hours just trying to make the bots way more consistent in spiking so I switched from a fixed delay to waiting until the ball is at a certain point in order to spike Bots and players now tp to default positions at the start of gameplay and bots have a serving procedure TPs and positioning took some 3-4 hours because character controllers tend to conflict with teleporting using transform.position, which is smth I didn’t know till chat(ai) told me What’s next Going to keep working on the gameplay system so that you can play a full set at least I’m gonna hopefully then work on the menu to make it look nice I’m also going to make a tutorial since I think the game would be relatively difficult for beginners"}, {"post_id": 73533, "ts": "2026-09-25T10:35:47Z", "hours": 9.1533, "text": "Devlog #9 - Teammate Progress TLDR: Made the teammate who can make plays and spent LOTS of time fine-tuning gameplay and spikes I essentially used a similar set of code for the teammate compared to the opponent bots, except with a few changes such as decision making It took maybe 2 hrs to fine tune and fix bugs related to the spike to a point where it is somewhat consistent I also improved the touch system so each bot knows who the last player to touch the ball was which took the bulk of the time What’s next I’m planning on improving the difficulty by making the bots spike steeper angles depending on the distance from the net I’m then going to try and make the game management for point counting and stuff I’m also planning on improving the menu so that it feels more immersive Below: I must’ve written like over 1000 lines of code for the whole project"}, {"post_id": 71689, "ts": "2026-09-21T09:52:11Z", "hours": 8.9931, "text": "Devlog #8 - Bots Progress TLDR: Built a position predictor/tracker for the ball and made bots able to go to the ball/hit It took about 2-3 hrs to make the ball tracker, which uses physics/math (SUVAT equations) to solve for the general predicted position of the ball after a hit I then spent about 5-6 hrs trying to figure out how to implement the bots, as even trying to get them to move reliably to the ball position was difficult The bots can return your first ball you hit at them What’s next I’m now gonna try and make these bots able to decipher between who last touched the ball and then do sets and hits and stuff to complete playsJ I also need to figure out the teammate, which should be easier"}, {"post_id": 67056, "ts": "2026-09-13T03:09:38Z", "hours": 2.5928, "text": "Devlog #7 - Third Person Progress TLDR: Made a toggleable third person orbiting view This took a really long time because I’ve never actually made a proper third person view in Unity before It took quite a lot of code (140 lines), mainly because trying to make the camera orbit properly and not just tilt is way more complicated than it looks What’s next I’m finally get a move on and make the game manager and the teammates/opponents cpus After that, I’m hoping to do some refining work on the menus and stuff and make Duos more polished as a game, not just like a one trick pony project"}, {"post_id": 65918, "ts": "2026-09-11T11:42:45Z", "hours": 8.7131, "text": "Devlog #6 - Menu (kinda) Progress TLDR: Made a menu w/ environment and play button I haven’t worked on the game for a while bc of exams in the past few weeks, but I should hopefully still be able to complete the game before the challenge finishes. I designed a few elements in Canva and tried to pair them with an environment, which took forever bc the grass wouldn’t sway properly and kept shifting around. I linked the play button to reach the main volleyball game part, but I will probably make a submenu What’s next I’m going to start working on a 3rd person view for the character since it is pretty hard to play in first person I’m going to make a tracker for the ball so there can be more visual cues as to where its going I should hopefully be able to start making the opponents/teammate which I’ve been procrastinating on Please offer any feedback, it’s been really useful!"}, {"post_id": 40661, "ts": "2026-08-04T10:49:46Z", "hours": 1.0389, "text": "Devlog #5 - Set Progress TLDR: Added set, rerouted dive button, unified hitting system The main thing I added was a set, which is now F (for front set). If you don’t play vb, the set basically hits it high for someone else to spike (hit) the ball Changed the dive button from F to Q Moved all the hitting stuff to a unified system, so basically clicking a certain button registers a type of hit via a string that determines if you set, spike or bump. This should make it easier in the long term Any feedback’s great! Suggested gamemodes, features, arts, nitpicks are all welcome!"}, {"post_id": 40070, "ts": "2026-08-03T13:18:13Z", "hours": 1.3219, "text": "Devlog #4 - Crosshair cooldown timer Progress Made a crosshair that basically goes clear(ish) once you hit, and then goes back to opaque once the cooldown timers over (1 s) Also made the sky a little bluer All suggestions are welcome btw, I’m happy to hear what sports, features, etc you want to see in the game! Attached a vid of gameplay below and another Goober portrait"}, {"post_id": 39396, "ts": "2026-08-02T10:38:47Z", "hours": 2.6408, "text": "Devlog #3 - Dive Progress This genuinely took way too much math and testing values, but I finally got a somewhat decent looking dive implemented. When you press F, your character hits a dive and saves the ball. It uses this rectangle hitbox area, and balls that go in that area are hittable. Also shout out to @aayanalikhan09 for the idea to move the light source, now the shadows are much more unnoticeable :) Please feel free to make some suggestions, whether that be small features like lighting or big things like gamemodes/sports you’d like to see! I’ve linked a video of the dive in action below and today’s Goober photo:"}, {"post_id": 38858, "ts": "2026-08-01T12:50:17Z", "hours": 1.2911, "text": "Devlog #2 - Hit cooldown Progress Before this cooldown timer, you could basically double hit the balls and send them to space. Now, you have to wait one second between hits. Feel free to make suggestions, should I make drills, volleyball-soccer cross minigames in the future, etc Enjoy a portrait of Goober below (swipe right):"}, {"post_id": 38064, "ts": "2026-07-31T08:10:55Z", "hours": 0.8853, "text": "Devlog #1 - Foundations of Duos What’s Duos? Duos is a Unity-based 3D sports game that’s going to involve sports such as volleyball, soccer, etc. Feel free to make any suggestions on how you think I could make the game more fun :) The game will be free on Steam when I get the volleyball and soccer parts done. Progress So far, I’ve gotten down the WASD movement and jumping along with the bumping and spiking (hitting) for the volleyball. I’m starting with volleyball, then I’ll move onto soccer. The reason I haven’t made any devlogs before is because I only discovered Stardance from a teacher recently. Stay safe and have fun with your projects :) AI disclosure To be straight up, I have used a bit of Gemini/ChatGPT in some of the bugfixing for my code. Sometime’s I’ll come across some error message or smth that I have no idea what it means, so I’ll just get ai to tell me. Otherwise, the code’s all written originally by me, and I am using some free assets off the unity store for Goober and his sports equipment! I’ve also attached some portraits of the main character, Goober, and some test gameplay."}]...
|
Title: Duos by @winwon23 | Stardance
Devlogs:
Dev Title: Duos by @winwon23 | Stardance
Devlogs:
Devlog #1 - Foundations of Duos What’s Duos? Duos is a Unity-based 3D sports game that’s going to involve sports such as volleyball, soccer, etc. Feel free to make any suggestions on how you think I could make the game more fun :) The game will be free on Steam when I get the volleyball and soccer parts done. Progress So far, I’ve gotten down the WASD movement and jumping along with the bumping and spiking (hitting) for the volleyball. I’m starting with volleyball, then I’ll move onto soccer. The reason I haven’t made any devlogs before is because I only discovered Stardance from a teacher recently. Stay safe and have fun with your projects :) AI disclosure To be straight up, I have used a bit of Gemini/ChatGPT in some of the bugfixing for my code. Sometime’s I’ll come across some error message or smth that I have no idea what it means, so I’ll just get ai to tell me. Otherwise, the code’s all written originally by me, and I am using some free assets off the unity store for Goober and his sports equipment! I’ve also attached some portraits of the main character, Goober, and some test gameplay.
Devlog #2 - Hit cooldown Progress Before this cooldown timer, you could basically double hit the balls and send them to space. Now, you have to wait one second between hits. Feel free to make suggestions, should I make drills, volleyball-soccer cross minigames in the future, etc Enjoy a portrait of Goober below (swipe right):
Devlog #3 - Dive Progress This genuinely took way too much math and testing values, but I finally got a somewhat decent looking dive implemented. When you press F, your character hits a dive and saves the ball. It uses this rectangle hitbox area, and balls that go in that area are hittable. Also shout out to @aayanalikhan09 for the idea to move the light source, now the shadows are much more unnoticeable :) Please feel free to make some suggestions, whether that be small features like lighting or big things like gamemodes/sports you’d like to see! I’ve linked a video of the dive in action below and today’s Goober photo:
Devlog #4 - Crosshair cooldown timer Progress Made a crosshair that basically goes clear(ish) once you hit, and then goes back to opaque once the cooldown timers over (1 s) Also made the sky a little bluer All suggestions are welcome btw, I’m happy to hear what sports, features, etc you want to see in the game! Attached a vid of gameplay below and another Goober portrait
Devlog #5 - Set Progress TLDR: Added set, rerouted dive button, unified hitting system The main thing I added was a set, which is now F (for front set). If you don’t play vb, the set basically hits it high for someone else to spike (hit) the ball Changed the dive button from F to Q Moved all the hitting stuff to a unified system, so basically clicking a certain button registers a type of hit via a string that determines if you set, spike or bump. This should make it easier in the long term Any feedback’s great! Suggested gamemodes, features, arts, nitpicks are all welcome!
Devlog #6 - Menu (kinda) Progress TLDR: Made a menu w/ environment and play button I haven’t worked on the game for a while bc of exams in the past few weeks, but I should hopefully still be able to complete the game before the challenge finishes. I designed a few elements in Canva and tried to pair them with an environment, which took forever bc the grass wouldn’t sway properly and kept shifting around. I linked the play button to reach the main volleyball game part, but I will probably make a submenu What’s next I’m going to start working on a 3rd person view for the character since it is pretty hard to play in first person I’m going to make a tracker for the ball so there can be more visual cues as to where its going I should hopefully be able to start making the opponents/teammate which I’ve been procrastinating on Please offer any feedback, it’s been really useful!
Devlog #7 - Third Person Progress TLDR: Made a toggleable third person orbiting view This took a really long time because I’ve never actually made a proper third person view in Unity before It took quite a lot of code (140 lines), mainly because trying to make the camera orbit properly and not just tilt is way more complicated than it looks What’s next I’m finally get a move on and make the game manager and the teammates/opponents cpus After that, I’m hoping to do some refining work on the menus and stuff and make Duos more polished as a game, not just like a one trick pony project
Devlog #8 - Bots Progress TLDR: Built a position predictor/tracker for the ball and made bots able to go to the ball/hit It took about 2-3 hrs to make the ball tracker, which uses physics/math (SUVAT equations) to solve for the general predicted position of the ball after a hit I then spent about 5-6 hrs trying to figure out how to implement the bots, as even trying to get them to move reliably to the ball position was difficult The bots can return your first ball you hit at them What’s next I’m now gonna try and make these bots able to decipher between who last touched the ball and then do sets and hits and stuff to complete playsJ I also need to figure out the teammate, which should be easier
Devlog #9 - Teammate Progress TLDR: Made the teammate who can make plays and spent LOTS of time fine-tuning gameplay and spikes I essentially used a similar set of code for the teammate compared to the opponent bots, except with a few changes such as decision making It took maybe 2 hrs to fine tune and fix bugs related to the spike to a point where it is somewhat consistent I also improved the touch system so each bot knows who the last player to touch the ball was which took the bulk of the time What’s next I’m planning on improving the difficulty by making the bots spike steeper angles depending on the distance from the net I’m then going to try and make the game management for point counting and stuff I’m also planning on improving the menu so that it feels more immersive Below: I must’ve written like over 1000 lines of code for the whole project
Devlog #10 - Gameplay systems Progress TLDR: Fine tuned bot spikes to be more consistent with a diff system, made a starting serving procedure I’m not kidding when I say I must’ve spent like 4 hours just trying to make the bots way more consistent in spiking so I switched from a fixed delay to waiting until the ball is at a certain point in order to spike Bots and players now tp to default positions at the start of gameplay and bots have a serving procedure TPs and positioning took some 3-4 hours because character controllers tend to conflict with teleporting using transform.position, which is smth I didn’t know till chat(ai) told me What’s next Going to keep working on the gameplay system so that you can play a full set at least I’m gonna hopefully then work on the menu to make it look nice I’m also going to make a tutorial since I think the game would be relatively difficult for beginners
Devlog #11 - Point distribution and new loading screen (?) Progress TLDR: I finished a ground detection system that sees when the ball hits the ground and gives appropriate pts. I’m also working on a new pre-menu/splash screen! The ground detection system uses a collider check that looks for when the ball hits the ground and sees where the ball was last and the last player to touch the ball, giving points accordingly There were issues with ground hits giving double points because the ball would bounce, so I had to add a cooldown that prevented this The ground hitting detection made me realise the bots kept letting the ball hit the ground first , so I had to fix that up by getting bots to hit earlier which I did by reducing hit cooldown (idk why it worked) I’m also working on a new splash screen! (check below) What’s next? Hopefully I can get the splash screen done fairly quickly now that I think I’ve finalised a design I want to make a menu screen and a tutorial I’m going to add some kind of animations for the characters I’ll also eventually add some sort of score-keeping graphics and animations
Devlog #12 - New screens! Progress TLDR: I made a new splash, menu, and settings screen on the same canvas using a separate script to switch between the pages, with a transition! I’m genuinely super excited bc Duos is starting to turn into like an actual game. I used Canva to handmake all my assets and stuff which was a bit of a trek bc it doesn’t get counted toward hours but it was worth it bc the design is original I used separate scripts for buttons to enlarge on hover, dot ribbons to scroll across, and to change the text on the different modes This took quite a while since I’ve never really done much in UI other than like a basic button/canvas, so I’m pretty proud of what I’ve done. Also, I hit 60 hrs on Duos What’s next? I’m gonna work on the three maps, indoor, beach, and forrest, which should be pretty easy I’m then going to implement some graphics, so like a UI scoreboard and setboard(idk is that a thing lol) I’m also going to make the 3rd person view way better, it’s really impractical rn, I’m thinking like just volleyball style (new vb game that came out recently) Side note I’m coming close to shipping, I was previously trying to work up to 44 hrs but I realised I should probably get maybe 60-70 hrs to be safe, bc I really want to get the Bambu Lab A1 Mini…
Devlog #13 - New maps! Progress TLDR: I made 3 new maps that replace the old test map, being indoor, forest and beach, which are all super cool, and I’ve started working on the tutorial. 2 of the 3 new maps (forrest and beach) were made via the terrain feature so I have some nice landscape for both, but I decided to keep them relatively simple The indoor map looks kinda scary like backrooms vibes which idk about, I’m not that great with lighting and stuff, and it also has a super cursed ground texture if you look outside of the indoor area… The tutorial is going along pretty well without much trouble and so far you can learn to bump and to set which is nice What’s next? As mentioned previously, I’m going to work on the scoring and graphics, and obv I want to get the tutorial done ASAP I’ll also add free practice mode bc I get that the game will probably be kinda hard for beginners I don’t have enough time in Stardance left to make cool multiplayer or even local multiplayer or difficulties, so those will come in a future event, hopefully Terra if I can stay consistent....
|
1792802922.227178
|
1793407722.227178
|
|
70299
|
A Techy Portfolio by @melodelete | Stardance
|
melodelete
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-19T05:49:41Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made my own portfolio, it has 3 sections a profile, my skills, and my certificates, I’ve always wanted a portfolio for college and j*bs, I added a techy minmalistic aesthetic which was inspired by astramusic.dev , It’s a music player that I love.", "repo": "https://github.com/melodelete/Portfolio", "demo": "https://melodelete.github.io/Portfolio/"}]...
|
[{"post_id": 80626, "ts": "202 [{"post_id": 80626, "ts": "2026-10-18T10:38:13Z", "hours": 0.5925, "text": "Added some pretty cool logos to each skill making it look so much better"}, {"post_id": 80608, "ts": "2026-10-18T09:26:22Z", "hours": 3.7822, "text": "Got the base site fully working, adding some more features later!"}]...
|
Title: A Techy Portfolio by @melodelete | Stardanc Title: A Techy Portfolio by @melodelete | Stardance
Devlogs:
Got the base site fully working, adding some more features later!
Added some pretty cool logos to each skill making it look so much better
Ships:
I made my own portfolio, it has 3 sections a profile, my skills, and my certificates, I’ve always wanted a portfolio for college and j*bs, I added a techy minmalistic aesthetic which was inspired by astramusic.dev , It’s a music player that I love....
|
1793116193.0003288
|
1793202593.0003288
|
|
27454
|
MacWall - Website by @foundrceo | Stardance
|
foundrceo
|
3
|
116.0
|
1090
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-21T12:01:12Z", "hours": 18.0, "multiplier": 18.8, "payout": 331, "blessing": "neutral", "text": "Redesigned the homepage and site UI New hero, navbar, category strip and License pop-up. Features shown as rows, an Apple-style footer, and new 404 and error pages. New app icon everywhere (favicons, email logo) and a new social share image. New hero app video in 1080p, slowed down. Redesigned pricing page that says “one-time payment”. Install guide with animations, shown after you download. New help center with topic cards, search, and help inside the ⌘K command menu. Moved the whole site from Vercel to Cloudflare Workers macwall.app now runs on Cloudflare; Vercel is kept only as a backup. I connected the domains, moved the scheduled jobs (cron) over, set up caching for the landing pages, and fixed visitor country/IP detection on Cloudflare. Before the move I cut Vercel costs: videos served from R2, longer caching, lighter images, smaller 404 pages. Phone visitors On a phone, “Send to my Mac” emails you the download link instead of downloading a Mac file. “Set on Mac” opens the app directly through a macwall:// link. Wallpaper gallery and search traffic 45 wallpaper collections, more detailed wallpaper pages, and guides written to answer questions directly. Gallery sorted by most liked, with a “Download free” button and a sticky bar at the bottom. Faster loading: static gallery pages, lighter images, and full-size wallpaper files no longer served.", "repo": "https://github.com/foundrceo/MacWall-Web", "demo": "https://macwall.app/"}, {"ship_num": 2, "ts": "2026-09-16T07:40:26Z", "hours": 55.0, "multiplier": 10.94, "payout": 556, "blessing": "neutral", "text": "I just updated the entire ui ux of my website to make it 100x better and get better conversions update all the files and components name also to a professional / enterprise level", "repo": "https://github.com/foundrceo/MacWall-Web", "demo": "https://macwall.app/"}, {"ship_num": 3, "ts": "2026-07-24T10:16:41Z", "hours": 43.0, "multiplier": 9.79, "payout": 203, "blessing": "neutral", "text": "what did you make? macwall.app - the website for my macos live wallpaper app. download the free app buy pro with stripe and activate with a deep link. also pricing blog submit wallpapers and affiliates. what was challenging? getting checkout right. stripe → license email → macwall://activate had a lot of edge cases. india pricing and the reel refund flow took a few rewrites. keeping price copy in sync with real stripe prices was annoying. what are you proud of? it is live and people can actually use it. one click download one click checkout and the app unlocks. the site feels like a real product not a template. what should people know so they can test? open https://macwall.app hit download for macos (or grab the dmg on the github release). you need macos 26. browse pricing if you want to see permanent annual and reel refund. free try works without paying.", "repo": "https://github.com/foundrceo/MacWall-Web", "demo": "https://macwall.app/"}]...
|
[{"post_id": 80623, "ts": "202 [{"post_id": 80623, "ts": "2026-10-18T10:19:19Z", "hours": 10.7622, "text": "Just Shipped a major update in the ui ux overall application."}, {"post_id": 74829, "ts": "2026-09-28T12:06:55Z", "hours": 3.3728, "text": "raised macwall pricing recently and the response has actually been really good traffic is growing a lot too now around 59k visitors and 128k page views been testing pricing changes and polishing the site while watching how people respond to it"}, {"post_id": 72557, "ts": "2026-09-23T06:44:37Z", "hours": 2.4158, "text": "Update: v4.0.3Sep 18, 2026"}, {"post_id": 69630, "ts": "2026-09-17T13:22:36Z", "hours": 1.8347, "text": "mihi"}, {"post_id": 69026, "ts": "2026-09-16T07:39:04Z", "hours": 8.0711, "text": "Updated Entire Website UI/UX to 100x better :)"}, {"post_id": 64279, "ts": "2026-09-08T15:39:49Z", "hours": 0.9261, "text": "Fixes - Older free installs are treated the same as an ended trial: wallpapers stay paused until you unlock Pro."}, {"post_id": 62817, "ts": "2026-09-06T10:44:52Z", "hours": 6.8814, "text": "Improvements Public changelog page synced with shipping updates. Align the site catalog with the nine app categories. Allow timed unique conversion codes at checkout and in recovery mail."}, {"post_id": 43780, "ts": "2026-08-09T06:37:47Z", "hours": 10.1469, "text": "Improvements- Overhaul marketing copy, pricing UX, and hero assets for conversion. Fixes - Fix checkout recovery mail for failed and abandoned payments."}, {"post_id": 41147, "ts": "2026-08-05T05:28:58Z", "hours": 9.2678, "text": "New features - Public wallpaper gallery with search, SEO, and app deep links. Improvements - Clearer pricing cards, benefits, and upgrade prompts. Fixes - Fix blank wallpaper player caused by expired ISR signed URLs. Fix gallery Back wiping Show more and jumping to the footer."}, {"post_id": 39858, "ts": "2026-08-03T03:47:19Z", "hours": 13.9444, "text": "Highlights MacWall 3.0 — a redesigned Home with Liquid Glass chrome and a cleaner everyday workflow. Heart any wallpaper to bookmark it in Library Favorites without downloading. Save wallpapers to your Library, then auto-cycle them as a slideshow. New features Home rebuilt around Top Charts and Categories for faster browsing. Spotlight-style search to find wallpapers instantly (⌘K / ⌘F). One Add Wallpaper flow for private Library imports and community submissions. Save-only Library actions — keep a wallpaper without setting it on the desktop. Auto-cycle slideshow through saved Library wallpapers. Open wallpapers from macwall.app share links directly in the app. Pro+ licenses now support 10, 15, or 20 Macs. New features - Home rebuilt around Top Charts and Categories for faster browsing. Discord community invite pointed at the new server link. Improvements Liquid Glass navigation, Cause brand type, and tighter Home composition. Pro unlock sheet with glass chrome and smooth open / close motion. Escape closes overlays reliably — no blue focus ring around the window. Native Settings sidebar Forms and simpler window chrome. App icon refreshed to match macwall.app. Instagram handle updated to @macwallapp_ . Discord community invite pointed at the new server link. Highlights - MacWall 3.0 — a redesigned Home with Liquid Glass chrome and a cleaner everyday workflow. Heart any wallpaper to bookmark it in Library Favorites without downloading. Save wallpapers to your Library, then auto-cycle them as a slideshow. Spotlight-style search to find wallpapers instantly (⌘K / ⌘F). Save-only Library actions — keep a wallpaper without setting it on the desktop. Auto-cycle slideshow through saved Library wallpapers. Open wallpapers from macwall.app share links directly in the app. Improvements - Liquid Glass navigation, Cause brand type, and tighter Home composition. Favorites correctly appear in Library without a silent full download. Stronger app lifecycle, liveness, and desktop wallpaper stability. Smoother Live Support handoff with fewer stuck tickets. Fixes More reliable native wallpaper apply, repair, and extension playback. Favorites correctly appear in Library without a silent full download. Stronger app lifecycle, liveness, and desktop wallpaper stability. Smoother Live Support handoff with fewer stuck tickets. Fixes - More reliable native wallpaper apply, repair, and extension playback."}, {"post_id": 35582, "ts": "2026-07-27T03:37:07Z", "hours": 2.1853, "text": "MacWall updates after June 1, 2026"}, {"post_id": 34484, "ts": "2026-07-25T07:47:03Z", "hours": 3.4406, "text": "Working on MacWall.app :)"}, {"post_id": 33965, "ts": "2026-07-24T10:14:34Z", "hours": 0.7647, "text": "I built MacWall because I wanted live wallpapers on Mac that feel native not an Electron wrapper eating battery. The Swift app is the product. This repo is the storefront: marketing, Stripe checkout, license activation, downloads, blog, community submit, and admin tools."}, {"post_id": 33944, "ts": "2026-07-24T08:38:07Z", "hours": 14.6167, "text": "shipped pricing model today let’s go visit for free live wallpapers for your mac 💻 macwall.app get your one now !"}, {"post_id": 17445, "ts": "2026-06-28T07:04:17Z", "hours": 27.6111, "text": "live wallpaper for macos download the app now"}]...
|
Title: MacWall - Website by @foundrceo | Stardance Title: MacWall - Website by @foundrceo | Stardance
Devlogs:
live wallpaper for macos download the app now
shipped pricing model today let’s go visit for free live wallpapers for your mac 💻 macwall.app get your one now !
I built MacWall because I wanted live wallpapers on Mac that feel native not an Electron wrapper eating battery. The Swift app is the product. This repo is the storefront: marketing, Stripe checkout, license activation, downloads, blog, community submit, and admin tools.
Working on MacWall.app :)
MacWall updates after June 1, 2026
Highlights MacWall 3.0 — a redesigned Home with Liquid Glass chrome and a cleaner everyday workflow. Heart any wallpaper to bookmark it in Library Favorites without downloading. Save wallpapers to your Library, then auto-cycle them as a slideshow. New features Home rebuilt around Top Charts and Categories for faster browsing. Spotlight-style search to find wallpapers instantly (⌘K / ⌘F). One Add Wallpaper flow for private Library imports and community submissions. Save-only Library actions — keep a wallpaper without setting it on the desktop. Auto-cycle slideshow through saved Library wallpapers. Open wallpapers from macwall.app share links directly in the app. Pro+ licenses now support 10, 15, or 20 Macs. New features - Home rebuilt around Top Charts and Categories for faster browsing. Discord community invite pointed at the new server link. Improvements Liquid Glass navigation, Cause brand type, and tighter Home composition. Pro unlock sheet with glass chrome and smooth open / close motion. Escape closes overlays reliably — no blue focus ring around the window. Native Settings sidebar Forms and simpler window chrome. App icon refreshed to match macwall.app. Instagram handle updated to @macwallapp_ . Discord community invite pointed at the new server link. Highlights - MacWall 3.0 — a redesigned Home with Liquid Glass chrome and a cleaner everyday workflow. Heart any wallpaper to bookmark it in Library Favorites without downloading. Save wallpapers to your Library, then auto-cycle them as a slideshow. Spotlight-style search to find wallpapers instantly (⌘K / ⌘F). Save-only Library actions — keep a wallpaper without setting it on the desktop. Auto-cycle slideshow through saved Library wallpapers. Open wallpapers from macwall.app share links directly in the app. Improvements - Liquid Glass navigation, Cause brand type, and tighter Home composition. Favorites correctly appear in Library without a silent full download. Stronger app lifecycle, liveness, and desktop wallpaper stability. Smoother Live Support handoff with fewer stuck tickets. Fixes More reliable native wallpaper apply, repair, and extension playback. Favorites correctly appear in Library without a silent full download. Stronger app lifecycle, liveness, and desktop wallpaper stability. Smoother Live Support handoff with fewer stuck tickets. Fixes - More reliable native wallpaper apply, repair, and extension playback.
New features - Public wallpaper gallery with search, SEO, and app deep links. Improvements - Clearer pricing cards, benefits, and upgrade prompts. Fixes - Fix blank wallpaper player caused by expired ISR signed URLs. Fix gallery Back wiping Show more and jumping to the footer.
Improvements- Overhaul marketing copy, pricing UX, and hero assets for conversion. Fixes - Fix checkout recovery mail for failed and abandoned payments.
Improvements Public changelog page synced with shipping updates. Align the site catalog with the nine app categories. Allow timed unique conversion codes at checkout and in recovery mail.
Fixes - Older free installs are treated the same as an ended trial: wallpapers stay paused until you unlock Pro.
Updated Entire Website UI/UX to 100x better :)
mihi
Update: v4.0.3Sep 18, 2026
raised macwall pricing recently and the response has actually been really good traffic is growing a lot too now around 59k visitors and 128k page views been testing pricing changes and polishing the site while watching how people respond to it
Just Shipped a major update in the ui ux overall application.
Ships:
what did you make? macwall.app - the website for my macos live wallpaper app. download the free app buy pro with stripe and activate with a deep link. also pricing blog submit wallpapers and affiliates. what was challenging? getting checkout right. stripe → license email → macwall://activate had a lot of edge cases. india pricing and the reel refund flow took a few rewrites. keeping price copy in sync with real stripe prices was annoying. what are you proud of? it is live and people can actually use it. one click download one click checkout and the app unlocks. the site feels like a real product not a template. what should people know so they can test? open https://macwall.app hit download for macos (or grab the dmg on the github release). you need macos 26. browse pricing if you want to see permanent annual and reel refund. free try works without paying.
I just updated the entire ui ux of my website to make it 100x better and get better conversions update all the files and components name also to a professional / enterprise level
Redesigned the homepage and site UI New hero, navbar, category strip and License pop-up. Features shown as rows, an Apple-style footer, and new 404 and error pages. New app icon everywhere (favicons, email logo) and a new social share image. New hero app video in 1080p, slowed down. Redesigned pricing page that says “one-time payment”. Install guide with animations, shown after you download. New help center with topic cards, search, and help inside the ⌘K command menu. Moved the whole site from Vercel to Cloudflare Workers macwall.app now runs on Cloudflare; Vercel is kept only as a backup. I connected the domains, moved the scheduled jobs (cron) over, set up caching for the landing pages, and fixed visitor country/IP detection on Cloudflare. Before the move I cut Vercel costs: videos served from R2, longer caching, lighter images, smaller 404 pages. Phone visitors On a phone, “Send to my Mac” emails you the download link instead of downloading a Mac file. “Set on Mac” opens the app directly through a macwall:// link. Wallpaper gallery and search traffic 45 wallpaper collections, more detailed wallpaper pages, and guides written to answer questions directly. Gallery sorted by most liked, with a “Download free” button and a sticky bar at the bottom. Faster loading: static gallery pages, lighter images, and full-size wallpaper files no longer served....
|
1793130616.6478066
|
1793217016.6478066
|
|
6353
|
onecalc by @aer | Stardance
|
aer
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T10:18:21Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i made a whimsical b&w calculator inspired by onekey,u use the e-key of your keyboard.have lots of fun calculating with this calculator.", "repo": "https://github.com/aeratory678/onecalc", "demo": "https://onecalc-pi.vercel.app"}]...
|
[{"post_id": 80621, "ts": "202 [{"post_id": 80621, "ts": "2026-10-18T10:14:12Z", "hours": 5.1033, "text": "calculator which works with an e-key,every key has a mini-game,play it,to get the number! hihi ☆☆☆"}]...
|
Title: onecalc by @aer | Stardance
Devlogs:
calcu Title: onecalc by @aer | Stardance
Devlogs:
calculator which works with an e-key,every key has a mini-game,play it,to get the number! hihi ☆☆☆
Ships:
i made a whimsical b&w calculator inspired by onekey,u use the e-key of your keyboard.have lots of fun calculating with this calculator....
|
1793199262.233502
|
1793285662.233502
|
|
70164
|
WarioWare by @Siyam | Stardance
|
Siyam
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T10:23:48Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "WarioWareGame Welcome, This is my warioware game. Test your reaction time and speed here. This game has 2 mini game, one is to catch the hearts and other is to tap on the hearts under timer. you can win or die. I made this game in godot. i have uploaded it in itch.io. if you want to play this, go to itch.io. The main challange was the gd codes, that was so hard while building the death and win scene. because they didn’t gave the code. Link : https://siyam000111.itch.io/wario-ware-gamee", "repo": "https://github.com/Tanzil-Alam/WarioWareGame", "demo": "https://siyam000111.itch.io/wario-ware-gamee"}]...
|
[{"post_id": 80618, "ts": "202 [{"post_id": 80618, "ts": "2026-10-18T10:00:12Z", "hours": 3.4992, "text": "Completed the whole work, and published my game."}, {"post_id": 80405, "ts": "2026-10-17T15:25:46Z", "hours": 0.3789, "text": "Made the title page of warioware."}]...
|
Title: WarioWare by @Siyam | Stardance
Devlogs:
M Title: WarioWare by @Siyam | Stardance
Devlogs:
Made the title page of warioware.
Completed the whole work, and published my game.
Ships:
WarioWareGame Welcome, This is my warioware game. Test your reaction time and speed here. This game has 2 mini game, one is to catch the hearts and other is to tap on the hearts under timer. you can win or die. I made this game in godot. i have uploaded it in itch.io. if you want to play this, go to itch.io. The main challange was the gd codes, that was so hard while building the death and win scene. because they didn’t gave the code. Link : https://siyam000111.itch.io/wario-ware-gamee...
|
1793199172.0012865
|
1793285572.0012865
|
|
67480
|
Swordigo_Mario (BETA) by @IsoVoir | Stardance
|
IsoVoir
|
1
|
39.85
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-16T12:54:28Z", "hours": 37.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What did you make? I made a beta version of my own 2D fantasy adventure game. I worked on the environments, different pathways, backgrounds, level design, characters and other parts of the game. I tried to make it feel like a real adventure game, where the player can explore different places and face enemies. It is not perfect right now, but I made it with a lot of effort and time. What was challenging? The most challenging part for me was making the pathways and designing the levels. I struggled a lot to get the terrain and backgrounds looking the way I wanted. Sometimes things didn’t work as I expected, and I had to try again and again. Connecting the different parts of the game and fixing enemy attack and behaviour errors was also difficult for me. What are you proud of? I am proud that I didn’t give up even when things were not working properly. I spent a lot of time preparing the different parts of the game and trying to make everything work together. I used AI only for help with fixing some hostile mob behaviour and attack errors, and for converting some images to match the game’s art theme. I wanted to do the main work and understand what I was making instead of just getting the whole game generated. What should people know before trying my project? This is only the beta version, so there are still some flaws and things that need more work. I already know about many of them, and I have plans to improve them in the next updates. For now, I wanted to finish a playable version and share what I have made instead of waiting forever for everything to become perfect. I am going to work on better level design, more improvements and fixing the remaining issues in future updates. Please try my project and share your feedback. And keep an eye on my profile, because I will be working on improving the game in the next updates!", "repo": "https://github.com/kumarishan0825/SwordigoMario", "demo": "https://ishan0825.itch.io/swordigo-mario-beta-version"}]...
|
[{"post_id": 80611, "ts": "202 [{"post_id": 80611, "ts": "2026-10-18T09:30:19Z", "hours": 2.8489, "text": "All the AI art/asset I used in my game has been removed, and my code is now clean totally and the obstacles and character designing i done by my friend so that is why characters and obstacles were nothing used via seeking help with AI and the CODE of this game is really messing part where I dont took help of any kind of AI prompting, I learned and implement every single thing and this took me that much time but yeah without asset prompting and by my own efforts this game is literally took me 28 hours and For asset generation time extends 11 hours more, I honestly confirms my all the working"}, {"post_id": 80127, "ts": "2026-10-16T09:37:30Z", "hours": 6.7131, "text": "Final Devlog: I am so glad that my game is now playable and yeah it have some issues with animations of mobs but it is beta version next time i update it soon…. (1) Adding few Hostile mobs and bosses (2) Adding Winning and Death Scene (3) Fixing 239 errors while coding the nature of mobs but i got too many errors so I used claude AI to examine code that my code were faulty at which point (4)It have few issues like some bugs and some animation problem but i am unable to fix it so I am done here but overall I made it atleast good enough to explore and due to limiting resources and assets I am unable to do the music and sfx works but yeah it looks damn good"}, {"post_id": 79749, "ts": "2026-10-15T08:40:10Z", "hours": 6.2847, "text": "Devlog 10: An amazing timespent on the completion of my level “Castle wars” with its total stages development furnishment completed and only the area node to connect with player and it is finally become playable . , Only things left:- add mobs and bosses, some bizarre obstacles to interact, some beautiful animations, winning and losing scene, settings layout and also…. “volcanic end” development primarily under development and after a update i would publish"}, {"post_id": 79267, "ts": "2026-10-13T08:28:16Z", "hours": 3.2197, "text": "Devlog 9:- Plane Biome- all the stages of this level finally completed…"}, {"post_id": 79126, "ts": "2026-10-12T19:17:44Z", "hours": 2.3897, "text": "Devlog 8: “Level: Plane Biome” all 3 stages’ Background and obstacles work has done…"}, {"post_id": 78642, "ts": "2026-10-11T04:57:54Z", "hours": 4.1283, "text": "Devlog 7: I do massive changes : (i) Added a spell casting animation, (ii) Adding Master and the interaction with my player through Area 2D node and collisionshape2d (iii) Adding damage dealt by playerwhen entity came in his collision shape and connecting it with my left mouse button (iv) Resolving 29 errors and 8 warnings…. Now my code looks very healthy and easy to approachable but from next time and there is no ai usage in code, only pathway obstacle conversion into pixelated form was done by AI, I clearly admited it , I am not going to do things at same time, first i create back ground first in all then later i do some changes according to environment"}, {"post_id": 78138, "ts": "2026-10-09T18:31:53Z", "hours": 2.4664, "text": "Devlog 6: Adding Fighting animation and fixes the debug of jumping animation"}, {"post_id": 77871, "ts": "2026-10-08T16:44:25Z", "hours": 1.8572, "text": "Devlog 5; Working on Heart Dynamics after damage"}, {"post_id": 77579, "ts": "2026-10-07T15:03:52Z", "hours": 2.8178, "text": "Devlog 4: I added the parallax effect and solved some bugs of character falling and few flaws still there but resolves soon and changes some scripts to playable format."}, {"post_id": 77394, "ts": "2026-10-06T19:46:31Z", "hours": 4.3981, "text": "Devlog 3 : I add the protagonist and animate his movement and also work on background theme parallax effect but it failed badly.. Any suggestion to place the character on the static body because mine always falls even i try to resolve but here i get tired"}, {"post_id": 77013, "ts": "2026-10-05T11:20:40Z", "hours": 2.6014, "text": "Devlog 2 : I created a Menu Screen of my game and level scene Screen . Also I implemented the Global script for automated tabs and GdScript for the Menu buttons such as start etc."}, {"post_id": 76418, "ts": "2026-10-03T14:07:09Z", "hours": 0.3294, "text": "Devlog 1 : First time I am getting introduced by Godot engine. I am so excited with this project"}]...
|
Title: Swordigo_Mario (BETA) by @IsoVoir | Stardan Title: Swordigo_Mario (BETA) by @IsoVoir | Stardance
Devlogs:
Devlog 1 : First time I am getting introduced by Godot engine. I am so excited with this project
Devlog 2 : I created a Menu Screen of my game and level scene Screen . Also I implemented the Global script for automated tabs and GdScript for the Menu buttons such as start etc.
Devlog 3 : I add the protagonist and animate his movement and also work on background theme parallax effect but it failed badly.. Any suggestion to place the character on the static body because mine always falls even i try to resolve but here i get tired
Devlog 4: I added the parallax effect and solved some bugs of character falling and few flaws still there but resolves soon and changes some scripts to playable format.
Devlog 5; Working on Heart Dynamics after damage
Devlog 6: Adding Fighting animation and fixes the debug of jumping animation
Devlog 7: I do massive changes : (i) Added a spell casting animation, (ii) Adding Master and the interaction with my player through Area 2D node and collisionshape2d (iii) Adding damage dealt by playerwhen entity came in his collision shape and connecting it with my left mouse button (iv) Resolving 29 errors and 8 warnings…. Now my code looks very healthy and easy to approachable but from next time and there is no ai usage in code, only pathway obstacle conversion into pixelated form was done by AI, I clearly admited it , I am not going to do things at same time, first i create back ground first in all then later i do some changes according to environment
Devlog 8: “Level: Plane Biome” all 3 stages’ Background and obstacles work has done…
Devlog 9:- Plane Biome- all the stages of this level finally completed…
Devlog 10: An amazing timespent on the completion of my level “Castle wars” with its total stages development furnishment completed and only the area node to connect with player and it is finally become playable . , Only things left:- add mobs and bosses, some bizarre obstacles to interact, some beautiful animations, winning and losing scene, settings layout and also…. “volcanic end” development primarily under development and after a update i would publish
Final Devlog: I am so glad that my game is now playable and yeah it have some issues with animations of mobs but it is beta version next time i update it soon…. (1) Adding few Hostile mobs and bosses (2) Adding Winning and Death Scene (3) Fixing 239 errors while coding the nature of mobs but i got too many errors so I used claude AI to examine code that my code were faulty at which point (4)It have few issues like some bugs and some animation problem but i am unable to fix it so I am done here but overall I made it atleast good enough to explore and due to limiting resources and assets I am unable to do the music and sfx works but yeah it looks damn good
All the AI art/asset I used in my game has been removed, and my code is now clean totally and the obstacles and character designing i done by my friend so that is why characters and obstacles were nothing used via seeking help with AI and the CODE of this game is really messing part where I dont took help of any kind of AI prompting, I learned and implement every single thing and this took me that much time but yeah without asset prompting and by my own efforts this game is literally took me 28 hours and For asset generation time extends 11 hours more, I honestly confirms my all the working
Ships:
What did you make? I made a beta version of my own 2D fantasy adventure game. I worked on the environments, different pathways, backgrounds, level design, characters and other parts of the game. I tried to make it feel like a real adventure game, where the player can explore different places and face enemies. It is not perfect right now, but I made it with a lot of effort and time. What was challenging? The most challenging part for me was making the pathways and designing the levels. I struggled a lot to get the terrain and backgrounds looking the way I wanted. Sometimes things didn’t work as I expected, and I had to try again and again. Connecting the different parts of the game and fixing enemy attack and behaviour errors was also difficult for me. What are you proud of? I am proud that I didn’t give up even when things were not working properly. I spent a lot of time preparing the different parts of the game and trying to make everything work together. I used AI only for help with fixing some hostile mob behaviour and attack errors, and for converting some images to match the game’s art theme. I wanted to do the main work and understand what I was making instead of just getting the whole game generated. What should people know before trying my project? This is only the beta version, so there are still some flaws and things that need more work. I already know about many of them, and I have plans to improve them in the next updates. For now, I wanted to finish a playable version and share what I have made instead of waiting forever for everything to become perfect. I am going to work on better level design, more improvements and fixing the remaining issues in future updates. Please try my project and share your feedback. And keep an eye on my profile, because I will be working on improving the game in the next updates!...
|
1793008273.8492937
|
1793872273.8492937
|
|
53926
|
Manim derivative plotter by @TyrannoJ | Stardance
|
TyrannoJ
|
2
|
53.04
|
744
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-14T15:32:17Z", "hours": 27.0, "multiplier": 15.47, "payout": 420, "blessing": "neutral", "text": "I updated my python project: Last ship I had made a python library for plotting polynomial functions with manim. Th most common suggestion I got by reviewers is: put in on a website for better accesability, so I did :). The website runs on next.js and vercel and is connected to a python backend on a local laptop. The core logic is still my python project from before. It was quite hard to set up the site because I first wanted to host the backend on render but it didn’t like manim so i migrated it to local. Originally I also wanted to include more of my manim projects but I moved them into another project and repo now. What was very fun was the styling with tailwincss and I quite like how it turned out, also the video saving part is quite fun as it saves one new file for each request So in summary my site has the following features: A video and a picture tool where you can let the backend give you a picture/video of a function, its derivatives and the extremes and turning points… and a little joke generator :) I hope the site works and my PC can always crash but it has run for 4 days now and I’m confident. That’s about it, thank you for reading and have a good one", "repo": "https://github.com/TyrannoJ/manim", "demo": "https://manim-ochre.vercel.app/"}, {"ship_num": 2, "ts": "2026-08-30T17:43:18Z", "hours": 24.0, "multiplier": 13.4, "payout": 324, "blessing": "neutral", "text": "Manim Derivative plotter: I started this project a week ago because I#m fascinated with 3b1b’s Animations and thougth being able to do them myself would be pretty cool, so I madde this because it was the first thing that came to mind as I had done derivatives a lot in school last year, so I just made something that can do a part of the tedious boring work for me, at least till we learn something new. Challenges At first it was a challenge to learn how exactly Manim works, but once you get the basics it is really easy to expand your knowledge because it is very logical. Then I had problems with manim sideview because it didn’t render so I had to manually render my videos through most of this project (but it was just two more clicks, so that’s okay). I also had to learn a little patience because rendering takes a long time, but I made a simple version with whih i could also test things much faster than with the long rendering animations. In the end I’m pretty proud of the logic behind the animations, especially the scaling of the axes correspnfing to the function and that I really made something I think is simple enough so I and will use it for school so it’s not just a project nobody needs but actually something useful. That’s it I think, if you want to see some of the programm outputs or test the project yourself then look in the Readme, it says there what you gotta do, i tested it and I think it should work. Thats all from me, this has been really fun, I hope you like my project and maybe someone will actually use it for school or something. Thanks for reading, have fun with the plotter :)", "repo": "https://github.com/TyrannoJ/manim", "demo": "https://manim-ochre.vercel.app/"}]...
|
[{"post_id": 80605, "ts": "202 [{"post_id": 80605, "ts": "2026-10-18T09:10:09Z", "hours": 2.0386, "text": "Devlog 13 First thanks for all the amazing reviews on my last ship, I’m very happy how it turned out. Since last time I put in a few things. What I did put in a copy button on the image (mostly with AI) so user can easily put the content somwhere else check for false inputs on the frontend, because before the backend always rendered 1x when a false input was given make the help more understandable added an alt image for testing when I can’t connect to the backend What I’ll do next I have like a 15 point to do list so I wont be running out of things to do Thank you for reading and have a nice day"}, {"post_id": 79542, "ts": "2026-10-14T15:01:58Z", "hours": 2.6258, "text": "Devlog 12 I mainly made some small help adjustments to get ready to ship What I did Added a help tab with infos and a link to the readme Made the server work on multiple workers (this is just one simple command LOL) Made all the python functions async, so it can connect to multiple users Ok, so I think I’ll get ready to ship now, there is still a ton of stuff I’ll be doing in the next version but it works for now and I want this shipped before stardance runs out. Thank you for reading, have a good one"}, {"post_id": 78880, "ts": "2026-10-11T21:08:30Z", "hours": 7.6142, "text": "Devlog 11 So, I coded a lot today, very fun stuff What I did I styled my website with tailwindcss with the help of the official documentation You can now also see the rendered videos on the site I have a joke tab on the website with jokes from here , thanks to this project where I found this awesome API I added little stuff like a very cool favicon Challenges Tailwindcss is al little messy but soooo useful Needed a little help from copilot for finding some errors as I am not that good with javascript What I’ll do next make the input more robust to user error fix a few small rendering issues make a more permanent cloudflared tunnel ship hopefully tomorrow That’s it, coding is cool, if you like, try my website here , have a nice one, thanks for reading"}, {"post_id": 78188, "ts": "2026-10-09T22:18:53Z", "hours": 6.4897, "text": "Devlog 10 Ok, so I didn’t write for some time but I have done some pretty cool stuff actually. What I did first I worked a little more on another explanatory video for school, before moving it to another project because it didn’t fit here very well Mainly I worked on getting the website working (with a lot of help from my friend perplexity) -first I made the video upload from python to next.js work on my PC then I deployed the frontend on vercel -Tried to deploy backend on render but it didn’t like manim very much so I instead put it on my Linux Laptop and it’s working now for pictures at least What I’ll do next Make the website more stable and let it upload videos too and make it look better (whoooo CSS) That’s about all, you’re welcome to try my project at manim-ochre.vercel.app"}, {"post_id": 75238, "ts": "2026-09-29T15:37:06Z", "hours": 6.1378, "text": "Devlog 9 So I didn’t write for long time because I have been busy with other projects but I have done mainly two new things while waiting for the project to get reviewed Add a new video I basically want to turn this repository into a collection of all the things I do with manim and I had to make a video about electric potential for school so I put it in there and it is quite cool and useful Start website development It appears that a python library is harder to do than I thought, so my plan is now to make a website and let my computer handle all the python. For now it is local and you can only send text to the backend but if it works it will be sooo cool. I’m using Next.js and FastAPI which I already know from a former project. That’s as they say it for now, thanks for reading, have a nice one"}, {"post_id": 69216, "ts": "2026-09-16T16:35:27Z", "hours": 2.6294, "text": "Devlog 8 I think I am finally finished now, I tried to make a standalone executable but the packaging tool didn’t like me and I didn’t like it. So I made a Pypi release!!! It was my first so I had to read through the documentation and also get a little explaining from copilot but it is actually surprisingly simple. I just had to create a folder structure a README (had it already) a pyproject-toml (configuration) a LICENSE then just build and ship finished!!! So you can very easily try my project out now just run pip install manim-derivative-plotter and use render_animation() and render_picture() but I explain all of it in the Readme Sooo, I’ll ship again now, hope it works Thanks for reading, have a nice one"}, {"post_id": 59840, "ts": "2026-09-01T20:18:53Z", "hours": 1.1686, "text": "Devlog 7 After resolving the last problem I tried to ship again however there was a bug, because I had used LaTex to show the functions in my code and you have to install a seperate programm for that. So thanks to the shipping team for pointing this out, I now changed it to Typst, which for my purposes works basically like Tex but I can put in my pyproject.toml dependencies. So that’s it, hope it works for everyone now, thank you for reading and have a good one"}, {"post_id": 59447, "ts": "2026-09-01T09:30:00Z", "hours": 0.5153, "text": "Devlog 6 In my first ship try I didn’t explain how to test the project yourself on the demo site, so I now fixed that and added the explanations from the readme to the site, thanks to the shipping team for pointing this out to me and I hope it is good now. thanks for reading, have a good one"}, {"post_id": 58280, "ts": "2026-08-30T17:27:55Z", "hours": 4.1336, "text": "Devlog 6 Okay so I wanted to ship after last time but then i decided to fix a few more errors and make my project more easily testable, so here’s what i did: Changes made the input better so you can inpu for example constants without writing x0 behind them fixed a problem with x=0, where sympy.solveset would give me infinite zeros, I made so that it gives none because it was the solution that made the most sense in keeping everything as simple as possible made thg curve indicator graph also work for lines with no curvature and lines with no turning points I made the whole thing downloadable and testable over pipx made the website design a little better -made a better Readme and commented my code That is pretty much it, thanks for reading, if anybody wants to try the project, the Readme says how it’s done, thank you for reading"}, {"post_id": 55139, "ts": "2026-08-26T16:36:38Z", "hours": 2.5172, "text": "Devlog 5 final Devlog I think, after patching the last little bugs and writing a better Readme, I had a little fight with github pages because it sometimes wouldn’t show my videos, luckily I got it to work. So my Demo is now a page with the rendered videos on it and that should hopefully work for everyone. The pictures are what the demo should look like. This has been fun and I’m amazed how fast you can create cool stuff with manim, thanks to Grant Sanderson from 3blue1brown. Right, I’ll get myself some rest and think about the next manim project I will do, thanks for reading and have a nice one."}, {"post_id": 54806, "ts": "2026-08-25T22:55:48Z", "hours": 4.4847, "text": "Devlog 4 Hello again, today I did a lot of bugfixing and little tweaks to make the animation better Bugfixes fixed a bug where some functions where only partially shown on screen solved some Transform Problems by sorting the zero points Other Stuff Made functions shown on screen more appealing by removing useless +es for example added boxes behind the text so you can read it if the functions go through there made user Input more resistant against false Inputs And I finally got Manim Sideview working correctly, before that I always had to render everything and then show it with sideview, Yay!!! Gotta sleep now, it’s 1am, thanks for reading and Good night"}, {"post_id": 54425, "ts": "2026-08-25T13:05:28Z", "hours": 2.2722, "text": "Devlog 3 Sooo after the main functionalities were finished I did everyones favourite job: Bugfixing yay!!! Here is what I did today and what I still have to do Bugfixes fixed a bug where curves werent shown because they were above/below the max y values of the coordinates fixed some division by zero stuff made custom boundaries for every function because some werent rendering because they had to render too many values outside of the screen “fixed” a weird type bug in sympy.solveset by just putting a try except there made some turning points with the same values on both sides better Animations Added the second derivative to the turning points Animation Fit zeros better To Do Make the Input of derivatives simple more flexible, user error proof Fix Problems with float Inputs Make Good Readme I will go eat lunch now, thanks for reading, have a nice day!!!"}, {"post_id": 54115, "ts": "2026-08-24T22:33:01Z", "hours": 1.5247, "text": "Devlog 2 After way tooo much work today I finished all the animations after fighting with data types for a while and I added the simple mode where it just gives you the finished picture without animations. Thank you for reading, have a nice night, I gotta sleep now"}, {"post_id": 54070, "ts": "2026-08-24T20:51:04Z", "hours": 9.3264, "text": "Devlog 1 I wanted to start creating Animations with manim for a while and this was a logical place to start because we just recently learned derivatives in school Here’s what i have so far -You can input normal polynomial expressions in the source code -They are plotted along with their first and second derivative -The program sows the zero points of all those functions -It then shows the Maxima/Minima and the Turning Points I also added some fn little tweaks like the coordinate system fitting itself to whatever function you input. What I want to do next: -Make the Animations better -Maybe add other types of functions That’s about it, thanks for reading, have a nice day"}]...
|
Title: Manim derivative plotter by @TyrannoJ | Sta Title: Manim derivative plotter by @TyrannoJ | Stardance
Devlogs:
Devlog 1 I wanted to start creating Animations with manim for a while and this was a logical place to start because we just recently learned derivatives in school Here’s what i have so far -You can input normal polynomial expressions in the source code -They are plotted along with their first and second derivative -The program sows the zero points of all those functions -It then shows the Maxima/Minima and the Turning Points I also added some fn little tweaks like the coordinate system fitting itself to whatever function you input. What I want to do next: -Make the Animations better -Maybe add other types of functions That’s about it, thanks for reading, have a nice day
Devlog 2 After way tooo much work today I finished all the animations after fighting with data types for a while and I added the simple mode where it just gives you the finished picture without animations. Thank you for reading, have a nice night, I gotta sleep now
Devlog 3 Sooo after the main functionalities were finished I did everyones favourite job: Bugfixing yay!!! Here is what I did today and what I still have to do Bugfixes fixed a bug where curves werent shown because they were above/below the max y values of the coordinates fixed some division by zero stuff made custom boundaries for every function because some werent rendering because they had to render too many values outside of the screen “fixed” a weird type bug in sympy.solveset by just putting a try except there made some turning points with the same values on both sides better Animations Added the second derivative to the turning points Animation Fit zeros better To Do Make the Input of derivatives simple more flexible, user error proof Fix Problems with float Inputs Make Good Readme I will go eat lunch now, thanks for reading, have a nice day!!!
Devlog 4 Hello again, today I did a lot of bugfixing and little tweaks to make the animation better Bugfixes fixed a bug where some functions where only partially shown on screen solved some Transform Problems by sorting the zero points Other Stuff Made functions shown on screen more appealing by removing useless +es for example added boxes behind the text so you can read it if the functions go through there made user Input more resistant against false Inputs And I finally got Manim Sideview working correctly, before that I always had to render everything and then show it with sideview, Yay!!! Gotta sleep now, it’s 1am, thanks for reading and Good night
Devlog 5 final Devlog I think, after patching the last little bugs and writing a better Readme, I had a little fight with github pages because it sometimes wouldn’t show my videos, luckily I got it to work. So my Demo is now a page with the rendered videos on it and that should hopefully work for everyone. The pictures are what the demo should look like. This has been fun and I’m amazed how fast you can create cool stuff with manim, thanks to Grant Sanderson from 3blue1brown. Right, I’ll get myself some rest and think about the next manim project I will do, thanks for reading and have a nice one.
Devlog 6 Okay so I wanted to ship after last time but then i decided to fix a few more errors and make my project more easily testable, so here’s what i did: Changes made the input better so you can inpu for example constants without writing x0 behind them fixed a problem with x=0, where sympy.solveset would give me infinite zeros, I made so that it gives none because it was the solution that made the most sense in keeping everything as simple as possible made thg curve indicator graph also work for lines with no curvature and lines with no turning points I made the whole thing downloadable and testable over pipx made the website design a little better -made a better Readme and commented my code That is pretty much it, thanks for reading, if anybody wants to try the project, the Readme says how it’s done, thank you for reading
Devlog 6 In my first ship try I didn’t explain how to test the project yourself on the demo site, so I now fixed that and added the explanations from the readme to the site, thanks to the shipping team for pointing this out to me and I hope it is good now. thanks for reading, have a good one
Devlog 7 After resolving the last problem I tried to ship again however there was a bug, because I had used LaTex to show the functions in my code and you have to install a seperate programm for that. So thanks to the shipping team for pointing this out, I now changed it to Typst, which for my purposes works basically like Tex but I can put in my pyproject.toml dependencies. So that’s it, hope it works for everyone now, thank you for reading and have a good one
Devlog 8 I think I am finally finished now, I tried to make a standalone executable but the packaging tool didn’t like me and I didn’t like it. So I made a Pypi release!!! It was my first so I had to read through the documentation and also get a little explaining from copilot but it is actually surprisingly simple. I just had to create a folder structure a README (had it already) a pyproject-toml (configuration) a LICENSE then just build and ship finished!!! So you can very easily try my project out now just run pip install manim-derivative-plotter and use render_animation() and render_picture() but I explain all of it in the Readme Sooo, I’ll ship again now, hope it works Thanks for reading, have a nice one
Devlog 9 So I didn’t write for long time because I have been busy with other projects but I have done mainly two new things while waiting for the project to get reviewed Add a new video I basically want to turn this repository into a collection of all the things I do with manim and I had to make a video about electric potential for school so I put it in there and it is quite cool and useful Start website development It appears that a python library is harder to do than I thought, so my plan is now to make a website and let my computer handle all the python. For now it is local and you can only send text to the backend but if it works it will be sooo cool. I’m using Next.js and FastAPI which I already know from a former project. That’s as they say it for now, thanks for reading, have a nice one
Devlog 10 Ok, so I didn’t write for some time but I have done some pretty cool stuff actually. What I did first I worked a little more on another explanatory video for school, before moving it to another project because it didn’t fit here very well Mainly I worked on getting the website working (with a lot of help from my friend perplexity) -first I made the video upload from python to next.js work on my PC then I deployed the frontend on vercel -Tried to deploy backend on render but it didn’t like manim very much so I instead put it on my Linux Laptop and it’s working now for pictures at least What I’ll do next Make the website more stable and let it upload videos too and make it look better (whoooo CSS) That’s about all, you’re welcome to try my project at manim-ochre.vercel.app
Devlog 11 So, I coded a lot today, very fun stuff What I did I styled my website with tailwindcss with the help of the official documentation You can now also see the rendered videos on the site I have a joke tab on the website with jokes from here , thanks to this project where I found this awesome API I added little stuff like a very cool favicon Challenges Tailwindcss is al little messy but soooo useful Needed a little help from copilot for finding some errors as I am not that good with javascript What I’ll do next make the input more robust to user error fix a few small rendering issues make a more permanent cloudflared tunnel ship hopefully tomorrow That’s it, coding is cool, if you like, try my website here , have a nice one, thanks for reading
Devlog 12 I mainly made some small help adjustments to get ready to ship What I did Added a help tab with infos and a link to the readme Made the server work on multiple workers (this is just one simple command LOL) Made all the python functions async, so it can connect to multiple users Ok, so I think I’ll get ready to ship now, there is still a ton of stuff I’ll be doing in the next version but it works for now and I want this shipped before stardance runs out. Thank you for reading, have a good one
Devlog 13 First thanks for all the amazing reviews on my last ship, I’m very happy how it turned out. Since last time I put in a few things. What I did put in a copy button on the image (mostly with AI) so user can easily put the content somwhere else check for false inputs on the frontend, because before the backend always rendered 1x when a false input was given make the help more understandable added an alt image for testing when I can’t connect to the backend What I’ll do next I have like a 15 point to do list so I wont be running out of things to do Thank you for reading and have a nice day
Ships:
Manim Derivative plotter: I started this project a week ago because I#m fascinated with 3b1b’s Animations and thougth being able to do them myself would be pretty cool, so I madde this because it was the first thing that came to mind as I had done derivatives a lot in school last year, so I just made something that can do a part of the tedious boring work for me, at least till we learn something new. Challenges At first it was a challenge to learn how exactly Manim works, but once you get the basics it is really easy to expand your knowledge because it is very logical. Then I had problems with manim sideview because it didn’t render so I had to manually render my videos through most of this project (but it was just two more clicks, so that’s okay). I also had to learn a little patience because rendering takes a long time, but I made a simple version with whih i could also test things much faster than with the long rendering animations. In the end I’m pretty proud of the logic behind the animations, especially the scaling of the axes correspnfing to the function and that I really made something I think is simple enough so I and will use it for school so it’s not just a project nobody needs but actually something useful. That’s it I think, if you want to see some of the programm outputs or test the project yourself then look in the Readme, it says there what you gotta do, i tested it and I think it should work. Thats all from me, this has been really fun, I hope you like my project and maybe someone will actually use it for school or something. Thanks for reading, have fun with the plotter :)
I updated my python project: Last ship I had made a python library for plotting polynomial functions with manim. Th most common suggestion I got by reviewers is: put in on a website for better accesability, so I did :). The website runs on next.js and vercel and is connected to a python backend on a local laptop. The core logic is still my python project from before. It was quite hard to set up the site because I first wanted to host the backend on render but it didn’t like manim so i migrated it to local. Originally I also wanted to include more of my manim projects but I moved them into another project and repo now. What was very fun was the styling with tailwincss and I quite like how it turned out, also the video saving part is quite fun as it saves one new file for each request So in summary my site has the following features: A video and a picture tool where you can let the backend give you a picture/video of a function, its derivatives and the extremes and turning points… and a little joke generator :) I hope the site works and my PC can always crash but it has run for 4 days now and I’m confident. That’s about it, thank you for reading and have a good one...
|
1793130559.1127555
|
1793216959.1127555
|
|
65665
|
My own site! by @mangoman | Stardance
|
mangoman
|
1
|
3.01
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-25T13:25:12Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a very simple site.But its my own and i like ir. Hardest part was the css and website hosting", "repo": "https://github.com/ismangoman/personal-site", "demo": "https://mangotechboy.dpdns.org"}]...
|
[{"post_id": 80603, "ts": "202 [{"post_id": 80603, "ts": "2026-10-18T08:43:18Z", "hours": 0.2731, "text": "Added an image to the sight and cleaned up the code a lil bit and upadted link in readme"}, {"post_id": 80596, "ts": "2026-10-18T08:07:49Z", "hours": 0.5772, "text": "I added a section about me. I had to use ai cuz after adding it the colours of the divs and text dissapered. I also changed the domain to a domain I had which hadd nothing on the root of it. now i will add a few images"}, {"post_id": 73874, "ts": "2026-09-26T07:22:14Z", "hours": 1.1578, "text": "So i improved the site by horizontally centering the divs, adding a background colour, adding some animations, made all the boxes use percentage sizes instead of pixel sizes becuas percentage works better. Added some fonts to. I also added a better readme and added a icon"}, {"post_id": 73595, "ts": "2026-09-25T13:18:04Z", "hours": 0.8222, "text": "So basically I started making the website. First i did the HTML of the website, after doing that i made the div’s then the css. I had to use one other tutorial from w3schools.com for the css. After making the website i tried to host on github pages but found i had an Iq too low so i had to use vercel pages.Then I just added the info to starance and done."}]...
|
Title: My own site! by @mangoman | Stardance
Devl Title: My own site! by @mangoman | Stardance
Devlogs:
So basically I started making the website. First i did the HTML of the website, after doing that i made the div’s then the css. I had to use one other tutorial from w3schools.com for the css. After making the website i tried to host on github pages but found i had an Iq too low so i had to use vercel pages.Then I just added the info to starance and done.
So i improved the site by horizontally centering the divs, adding a background colour, adding some animations, made all the boxes use percentage sizes instead of pixel sizes becuas percentage works better. Added some fonts to. I also added a better readme and added a icon
I added a section about me. I had to use ai cuz after adding it the colours of the divs and text dissapered. I also changed the domain to a domain I had which hadd nothing on the root of it. now i will add a few images
Added an image to the sight and cleaned up the code a lil bit and upadted link in readme
Ships:
I made a very simple site.But its my own and i like ir. Hardest part was the css and website hosting...
|
1793213792.6060412
|
1793300192.6060412
|
|
70295
|
traval website by @_iamhannann404_ | Stardance
|
_iamhannann404_
|
0
|
1.13
|
0
|
[]
|
[{"post_id": 80601, "ts": "202 [{"post_id": 80601, "ts": "2026-10-18T08:39:33Z", "hours": 1.1325, "text": "I make website on travel agency"}]...
|
Title: traval website by @_iamhannann404_ | Starda Title: traval website by @_iamhannann404_ | Stardance
Devlogs:
I make website on travel agency...
|
1792986761.3225465
|
1793591561.3225465
|
|
63541
|
InferWeave by @Amadev | Stardance
|
Amadev
|
0
|
10.16
|
0
|
[]
|
[{"post_id": 80600, "ts": "202 [{"post_id": 80600, "ts": "2026-10-18T08:22:47Z", "hours": 10.1589, "text": "Hi! I’m building InferWeave, an open-source Python SDK that makes deploying AI models on cloud GPUs easier to manage. Instead of wiring every application to a different provider API, you can use one async interface to launch a model, connect to its inference endpoint, check on a deployment, recover it later, and shut it down when you’re done. The project brings together provider integrations such as Modal, Lightning AI, RunPod, and Vast.ai, along with runtime configuration, health checks, and deployment lifecycle tools. My goal is to make it simpler to get a model running on GPU infrastructure and keep track of it without hiding the details that matter. InferWeave is still evolving, and I’ll share progress and the challenges I run into here. You can explore the code on GitHub: https://github.com/AmaLS367/InferWeave"}]...
|
Title: InferWeave by @Amadev | Stardance
Devlogs: Title: InferWeave by @Amadev | Stardance
Devlogs:
Hi! I’m building InferWeave, an open-source Python SDK that makes deploying AI models on cloud GPUs easier to manage. Instead of wiring every application to a different provider API, you can use one async interface to launch a model, connect to its inference endpoint, check on a deployment, recover it later, and shut it down when you’re done. The project brings together provider integrations such as Modal, Lightning AI, RunPod, and Vast.ai, along with runtime configuration, health checks, and deployment lifecycle tools. My goal is to make it simpler to get a model running on GPU infrastructure and keep track of it without hiding the details that matter. InferWeave is still evolving, and I’ll share progress and the challenges I run into here. You can explore the code on GitHub: https://github.com/AmaLS367/InferWeave...
|
1793051560.5865362
|
1793656360.5865362
|
|
17644
|
🐈Cat lover Slack bot by @mygulash | Stardance
|
mygulash
|
1
|
1.0
|
2
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-13T19:23:18Z", "hours": 1.0, "multiplier": 2.98, "payout": 2, "blessing": "neutral", "text": "My first ever project with Hack Club!✨ For my first project i chose creating a slack bot. My slack bot really really loves cats and it shows🐈He will gladly send you cat fun facts, images and even memes! After few hours of work i finally finished the code and could deploy it with nest so it runs 24/7. (The hackatime timer says it took me like 50 minutes even though i worked on it for like 4 hours… lol) For a beginner it was quite challenging to understand stuff like permissions and redirect URLs but Im happy to announce that its ready to ship! :D If you´re interested in this cat loving slack bot you can learn more about it in the read.me: https://github.com/Mygulash/LiborTheSlackBot/blob/main/README.md I hope that the cat memes, images and fun facts will make your day better :)🐈 Have a lovely day and pet your cat!✨", "repo": "https://github.com/Mygulash/LiborTheSlackBot", "demo": "https://hackclub.enterprise.slack.com/archives/C0B9Y31KHST"}]...
|
[{"post_id": 8060, "ts": "2026 [{"post_id": 8060, "ts": "2026-06-13T13:39:19Z", "hours": 0.7325, "text": "Finished the code for my Catloving Slack bot and now i´m waiting for my nest to get approved so i can host it ✨"}]...
|
Title: 🐈Cat lover Slack bot by @mygulash | Stardan Title: 🐈Cat lover Slack bot by @mygulash | Stardance
Devlogs:
Finished the code for my Catloving Slack bot and now i´m waiting for my nest to get approved so i can host it ✨
Ships:
My first ever project with Hack Club!✨ For my first project i chose creating a slack bot. My slack bot really really loves cats and it shows🐈He will gladly send you cat fun facts, images and even memes! After few hours of work i finally finished the code and could deploy it with nest so it runs 24/7. (The hackatime timer says it took me like 50 minutes even though i worked on it for like 4 hours… lol) For a beginner it was quite challenging to understand stuff like permissions and redirect URLs but Im happy to announce that its ready to ship! :D If you´re interested in this cat loving slack bot you can learn more about it in the read.me: https://github.com/Mygulash/LiborTheSlackBot/blob/main/README.md I hope that the cat memes, images and fun facts will make your day better :)🐈 Have a lovely day and pet your cat!✨...
|
1793202721.9125004
|
1793289121.9125004
|
|
68789
|
HeckerOS by @SilentVelocity | Stardance
|
SilentVelocity
|
0
|
3.63
|
0
|
[]
|
[{"post_id": 80589, "ts": "202 [{"post_id": 80589, "ts": "2026-10-18T07:24:38Z", "hours": 1.4356, "text": "Okay so the pop-up looks like a popup now. its been a while since i did web-dev so it was awkwardly time taking to make this popup look like a popup. I’ll add the js next."}, {"post_id": 78997, "ts": "2026-10-12T09:17:46Z", "hours": 1.2231, "text": "Okay so here are the changes: I added time to HackerOS I’m probably going to add a wallpaper next -I’m adding a pop-up screen -I’m going to remove the search bar as that tbh belongs to the new tab project and not an OS."}, {"post_id": 78073, "ts": "2026-10-09T14:05:17Z", "hours": 0.9689, "text": "INITIAL PROGRESS: Okay so we have two cool buttons that do nothing. i might proceeed to make them work or just remove them as a whole"}]...
|
Title: HeckerOS by @SilentVelocity | Stardance
De Title: HeckerOS by @SilentVelocity | Stardance
Devlogs:
INITIAL PROGRESS: Okay so we have two cool buttons that do nothing. i might proceeed to make them work or just remove them as a whole
Okay so here are the changes: I added time to HackerOS I’m probably going to add a wallpaper next -I’m adding a pop-up screen -I’m going to remove the search bar as that tbh belongs to the new tab project and not an OS.
Okay so the pop-up looks like a popup now. its been a while since i did web-dev so it was awkwardly time taking to make this popup look like a popup. I’ll add the js next....
|
1793126925.9992237
|
1793731725.9992237
|
|
67279
|
My own site! by @preethambollineni2013 | Stardance
|
preethambollineni2013
|
2
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T07:16:14Z", "hours": 0.0, "multiplier": 1.12, "payout": 0, "blessing": "neutral", "text": "A personal website , I did it before but didn’t like colour and font , so I changed.", "repo": "https://github.com/preethambollineni2013/preethambollineni2013.github.io", "demo": "https://preethambollineni2013.github.io/"}, {"ship_num": 2, "ts": "2026-10-11T01:25:16Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a personal website for myself. Since I was a starter i found difficult in GitHub. You can see my website by visiting preethambollineni2013.github.io", "repo": "https://github.com/preethambollineni2013/preethambollineni2013.github.io", "demo": "https://preethambollineni2013.github.io/"}]...
|
[{"post_id": 80587, "ts": "202 [{"post_id": 80587, "ts": "2026-10-18T07:14:06Z", "hours": 0.2778, "text": "Changed the colour scheme and Font"}, {"post_id": 78338, "ts": "2026-10-10T14:13:37Z", "hours": 0.28, "text": "My Own Site"}]...
|
Title: My own site! by @preethambollineni2013 | St Title: My own site! by @preethambollineni2013 | Stardance
Devlogs:
My Own Site
Changed the colour scheme and Font
Ships:
I made a personal website for myself. Since I was a starter i found difficult in GitHub. You can see my website by visiting preethambollineni2013.github.io
A personal website , I did it before but didn’t like colour and font , so I changed....
|
1793217070.4643073
|
1793303470.4643073
|
|
70158
|
Detective game in pdf by @Zeti_1223 | Stardance
|
Zeti_1223
|
0
|
11.78
|
0
|
[]
|
[{"post_id": 80586, "ts": "202 [{"post_id": 80586, "ts": "2026-10-18T07:12:25Z", "hours": 1.7636, "text": "Done with project"}, {"post_id": 80322, "ts": "2026-10-17T09:12:29Z", "hours": 10.0167, "text": "Still writing the story"}]...
|
Title: Detective game in pdf by @Zeti_1223 | Stard Title: Detective game in pdf by @Zeti_1223 | Stardance
Devlogs:
Still writing the story
Done with project...
|
1792958121.0703297
|
1793562921.0703297
|
|
67901
|
HsojOS by @Hsoj | Stardance
|
Hsoj
|
0
|
4.17
|
0
|
[]
|
[{"post_id": 80577, "ts": "202 [{"post_id": 80577, "ts": "2026-10-18T05:53:55Z", "hours": 4.1664, "text": "I followed the guides written by hackclub and then after finishing, I started all over from scratch to make it my own. Visit the site: https://hsoj.is-a.dev/projects/hsojOS"}]...
|
Title: HsojOS by @Hsoj | Stardance
Devlogs:
I fol Title: HsojOS by @Hsoj | Stardance
Devlogs:
I followed the guides written by hackclub and then after finishing, I started all over from scratch to make it my own. Visit the site: https://hsoj.is-a.dev/projects/hsojOS...
|
1793116187.2817235
|
1793980187.2817235
|
|
2448
|
airpodsstudio by @Leon | Stardance
|
Leon
|
0
|
12.09
|
0
|
[]
|
[{"post_id": 80573, "ts": "202 [{"post_id": 80573, "ts": "2026-10-18T05:45:17Z", "hours": 4.7508, "text": "woahh one in a lifetime? a second devlog??!?!?! WHAAAAA?! (quick btw note, we did like a 20 min session in school once that lead to nothing [img1]) We are back… or are we? the rpi said we were not…we spent like 30 min just trying to get the raspi to work againn with wifi, pain) BUT NOW WE ARE!!! in the airpod we found in arts (reread the last devlog <3) there was not enough place to fit our 3d printed resonance body…meaning i needed to make place not me fisting the thing until i could rip out all the support walls and newspaper [img2] but it was worthhhh it, now the complete stuff fits inside! three times the charm ; right? so last time we had to resolder the speaker like 4 times, and now we have to do so again (only 3 times); but now it holds, we switched the old cables to some demolished jumperwires at the last try! [img3] so we booted… and it would not conect, no matter how often i asked some random ai to debug, no matter how much of our combined 2 braincells we used…nothing was giving the result we wanted NOTHING [img4.1] BUT THEN BUT THEN!!! it suddenly worked, dunno why, it did let itself connect via spotify connect and bluetooth (sometimes bluetooth, depending on its mood) WE FINALLY HEARD A SOUND THAT WAS ACTUALLY STREAMED!!! [img4.2] this is only a side fact [img4.3] @Chroma bumped his head against the table ripping out a support wall or smth… but once we listed, we noticed something the sound…it was muffled, not the true experience a high quallity product like AirPodsStudio should have, and the only valid reasoning was that the previosly designed body was not giving the sound back in its optimal way…so @Chroma used his (and claudes) combined 2 braincells to achieve and optimal design [img4.4], This desing is printing RIGHT NOW Stay tuned to see this journey come to an end love you, and good evening or good night (the sun is rising rn HAHAHAHAHAHAHAHA)"}, {"post_id": 31041, "ts": "2026-07-19T03:40:03Z", "hours": 7.34, "text": "New Project with friends Airpods BUT HUGGEEE Like AirPods Studio….and working 1. The Situation we started out with a random single big AirPod we found in our Arts Classroom, the teacher said we could take it…so we did At home I had some old sony speakers…a raspberry pi, my 3d printer…and to much time… soooo i forced my friends Maxi ( @Lumethra ) and David ( @Chroma ) to come over for a lock in night…we call them archnights (called like that bc we install arch on random laptops) BUT THIS TIME….we are building this speaker… 2. The First Hours Started to open up the old Speakers so we could use the actual speaker thingi, first only of the one bc then we would not need to have an amp or any powersupply except for the raspberry pi…figured out later that the 3.5mm jack from the pi was to weak to power the speaker enough…so we broke open the second one later too. at first we also wanted to use a pi zero 2w…which would not have worked bc it has no DAC…meaning I needed to sacrifice a Pi 4b of mine for the aux port…The first actual success came when isntalling librespot and we heard the first music on that device…but not exactly what we wanted from the firmware…the goal was to connnect the “speaker” via bluetooth OR spotify Connect 3. The Middle Hours then @Chroma started designing a case for the speakers to fit perfectly inside our AirPod (during that time meme and @Lumethra installed arch on a random laptop) the design was (i quote) pretty straight forward. What wasnt was me trying to make a firmware after…i jumped around from reading existing repos or better said trying to understand existing repos…to vibecoding random shell scripts…and mixing all that together to a kind of working script that makes it possible to connect to the pi via bluetooth or Spotify at startup…not being able to change it unless rebooting the pi…right now i am kind of happy with the result…mainly because I managed to implement a startup sound when the bluetooth is discoverable. while i was coding this all together…the 3d printer started printing the case…only for us to realize at 5 am that the filament broke, meaning it needs to print all over again…plus we cannot finish the project tonight (very sadge) 4. The Final Hours cannot talk about them, did not happen yet good night love you <3"}]...
|
Title: airpodsstudio by @Leon | Stardance
Devlogs Title: airpodsstudio by @Leon | Stardance
Devlogs:
New Project with friends Airpods BUT HUGGEEE Like AirPods Studio….and working 1. The Situation we started out with a random single big AirPod we found in our Arts Classroom, the teacher said we could take it…so we did At home I had some old sony speakers…a raspberry pi, my 3d printer…and to much time… soooo i forced my friends Maxi ( @Lumethra ) and David ( @Chroma ) to come over for a lock in night…we call them archnights (called like that bc we install arch on random laptops) BUT THIS TIME….we are building this speaker… 2. The First Hours Started to open up the old Speakers so we could use the actual speaker thingi, first only of the one bc then we would not need to have an amp or any powersupply except for the raspberry pi…figured out later that the 3.5mm jack from the pi was to weak to power the speaker enough…so we broke open the second one later too. at first we also wanted to use a pi zero 2w…which would not have worked bc it has no DAC…meaning I needed to sacrifice a Pi 4b of mine for the aux port…The first actual success came when isntalling librespot and we heard the first music on that device…but not exactly what we wanted from the firmware…the goal was to connnect the “speaker” via bluetooth OR spotify Connect 3. The Middle Hours then @Chroma started designing a case for the speakers to fit perfectly inside our AirPod (during that time meme and @Lumethra installed arch on a random laptop) the design was (i quote) pretty straight forward. What wasnt was me trying to make a firmware after…i jumped around from reading existing repos or better said trying to understand existing repos…to vibecoding random shell scripts…and mixing all that together to a kind of working script that makes it possible to connect to the pi via bluetooth or Spotify at startup…not being able to change it unless rebooting the pi…right now i am kind of happy with the result…mainly because I managed to implement a startup sound when the bluetooth is discoverable. while i was coding this all together…the 3d printer started printing the case…only for us to realize at 5 am that the filament broke, meaning it needs to print all over again…plus we cannot finish the project tonight (very sadge) 4. The Final Hours cannot talk about them, did not happen yet good night love you <3
woahh one in a lifetime? a second devlog??!?!?! WHAAAAA?! (quick btw note, we did like a 20 min session in school once that lead to nothing [img1]) We are back… or are we? the rpi said we were not…we spent like 30 min just trying to get the raspi to work againn with wifi, pain) BUT NOW WE ARE!!! in the airpod we found in arts (reread the last devlog <3) there was not enough place to fit our 3d printed resonance body…meaning i needed to make place not me fisting the thing until i could rip out all the support walls and newspaper [img2] but it was worthhhh it, now the complete stuff fits inside! three times the charm ; right? so last time we had to resolder the speaker like 4 times, and now we have to do so again (only 3 times); but now it holds, we switched the old cables to some demolished jumperwires at the last try! [img3] so we booted… and it would not conect, no matter how often i asked some random ai to debug, no matter how much of our combined 2 braincells we used…nothing was giving the result we wanted NOTHING [img4.1] BUT THEN BUT THEN!!! it suddenly worked, dunno why, it did let itself connect via spotify connect and bluetooth (sometimes bluetooth, depending on its mood) WE FINALLY HEARD A SOUND THAT WAS ACTUALLY STREAMED!!! [img4.2] this is only a side fact [img4.3] @Chroma bumped his head against the table ripping out a support wall or smth… but once we listed, we noticed something the sound…it was muffled, not the true experience a high quallity product like AirPodsStudio should have, and the only valid reasoning was that the previosly designed body was not giving the sound back in its optimal way…so @Chroma used his (and claudes) combined 2 braincells to achieve and optimal design [img4.4], This desing is printing RIGHT NOW Stay tuned to see this journey come to an end love you, and good evening or good night (the sun is rising rn HAHAHAHAHAHAHAHA)...
|
1793202768.1186628
|
1793807568.1186628
|
|
13377
|
Vibe OS by @VibeSlayer | Stardance
|
VibeSlayer
|
1
|
6.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-13T13:24:18Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "VibeOS is Finally Complete This was a really wonderful experience building VibeOS. I made it with both the competition and minimalism in mind, focusing on keeping everything clean, smooth, and useful. The hardest part of this project was aligning everything with a vanilla tech stack. Since I usually work with Node.js and Vite, building this project with vanilla technologies felt refreshing and challenging in a good way. It helped me strengthen my core frontend concepts and made my understanding of vanilla development much cleaner and better. Overall, VibeOS has been an amazing project to work on. I learned a lot throughout the process, improved my development skills, and pushed myself to build something polished and complete. I’m really happy with how it turned out, and I hope VibeOS gets flying colours in the voting!", "repo": "https://github.com/VibeSlayer-code/VibeOS", "demo": "https://vibe-os-lac.vercel.app/"}]...
|
[{"post_id": 8057, "ts": "2026 [{"post_id": 8057, "ts": "2026-06-13T13:20:14Z", "hours": 2.1403, "text": "VibeOS Devlog #5 Hi developers, VibeOS is fully complete, finally. After the previous devlog i pushed major updates like taskbar, window resizing, more apps, dark mode, wallpapers and much more. As VibeOS is deployed. You can try it at https://vibe-os-lac.vercel.app/ . Thanks"}, {"post_id": 6439, "ts": "2026-06-10T20:31:34Z", "hours": 1.9672, "text": "VibeOS Devlog #4 Hi developers, today I gave VibeOS its biggest update yet. I made two new system apps and one app for VibeStore. Making VibeStore was the hardest task lmao. So basically, I’m not going to reveal much about VibeStore yet, as it is not complete with the apps I’m thinking about. I also made a custom browser for VibeOS called Surf . It is fast like Safari and clean, and it also has tab control. If you noticed the calculator logo on the main dock, it is a secret for now. I’m going to disclose more about it later. I also made a status dock on the right with Wi-Fi status, brightness, battery, etc., and added a control center modal. It shows real-time battery status and Wi-Fi status with ping. I also added more cool customizable widgets. For the next and final phase, my plans are to implement more apps and a fully working music player with a wide variety of artists and songs. I’m thinking about Jaydes, Kendrick, and some others. I will also add dark mode and the taskbar, which should not take much time. I have also planned some features for the WebOS 2 mission because I just do not want to drain my idea list in WebOS 1. And yeah one change which i m seeing is that now, i m not facing any problems while coding and everything is going very smooth, thanks Stardance for helping me revise my web dev skills :) Anyways, GN and long live VibeOS!"}, {"post_id": 5704, "ts": "2026-06-09T16:31:21Z", "hours": 1.4183, "text": "VibeOS Devlog #3 Today was a really long and tiring day working on VibeOS, but I pushed some major updates! I completed the filesystem API, made two new apps, improved the dock, added widgets, and more. The hardest part was definitely building the filesystem API, mainly because this was my first time making something like this 😂. It was painful, but worth it. It now supports rename, delete, create, and save properly. The dock also got a big update. Now when you minimize an app, a genie-style animation plays — I tried my best to recreate the macOS one lmao — and the app logo gets stacked in the dock. When you want to open it again, you just click the logo and boom, the window comes back. I also completed the Files app and Notes app, which were honestly much easier for me. Along with that, I designed and added two new movable and customizable widgets, which you can see in the screenshots I attached. Tomorrow, I’m planning to work on more apps, build the taskbar, and add dark mode. Let’s see how it goes. The biggest challenge right now is still the tech stack 😭, because I can’t use cool libraries like Framer Motion and stuff. Anyways, Long Live VibeOS!"}, {"post_id": 5480, "ts": "2026-06-09T08:57:30Z", "hours": 0.5778, "text": "DEVLOG #2 Hi developers! I have done some major completions in VibeOS. Here is the changelog! [+] Completed DockAPI (full function list will be available soon in the readme) [+] Completed App API and added appApi.syncOpenState(name) [+] Did dock enhancements! [+] Made in-app UI cleaner Lets keep going!"}, {"post_id": 5098, "ts": "2026-06-08T19:44:58Z", "hours": 0.2878, "text": "DEV LOG #1 Hi all! I’ve started building the OS. In Phase 1, I focused on creating the UI, deciding on the design rules and color palette, and implementing core features like app windows, dragging, and closing logic. I also made a top bar inspired by the Dynamic Island, which I’m really happy with. For Phase 2, I plan to add more apps, a settings app, different wallpapers, and lots of new features. Excited to keep building and share more progress soon!"}]...
|
Title: Vibe OS by @VibeSlayer | Stardance
Devlogs Title: Vibe OS by @VibeSlayer | Stardance
Devlogs:
DEV LOG #1 Hi all! I’ve started building the OS. In Phase 1, I focused on creating the UI, deciding on the design rules and color palette, and implementing core features like app windows, dragging, and closing logic. I also made a top bar inspired by the Dynamic Island, which I’m really happy with. For Phase 2, I plan to add more apps, a settings app, different wallpapers, and lots of new features. Excited to keep building and share more progress soon!
DEVLOG #2 Hi developers! I have done some major completions in VibeOS. Here is the changelog! [+] Completed DockAPI (full function list will be available soon in the readme) [+] Completed App API and added appApi.syncOpenState(name) [+] Did dock enhancements! [+] Made in-app UI cleaner Lets keep going!
VibeOS Devlog #3 Today was a really long and tiring day working on VibeOS, but I pushed some major updates! I completed the filesystem API, made two new apps, improved the dock, added widgets, and more. The hardest part was definitely building the filesystem API, mainly because this was my first time making something like this 😂. It was painful, but worth it. It now supports rename, delete, create, and save properly. The dock also got a big update. Now when you minimize an app, a genie-style animation plays — I tried my best to recreate the macOS one lmao — and the app logo gets stacked in the dock. When you want to open it again, you just click the logo and boom, the window comes back. I also completed the Files app and Notes app, which were honestly much easier for me. Along with that, I designed and added two new movable and customizable widgets, which you can see in the screenshots I attached. Tomorrow, I’m planning to work on more apps, build the taskbar, and add dark mode. Let’s see how it goes. The biggest challenge right now is still the tech stack 😭, because I can’t use cool libraries like Framer Motion and stuff. Anyways, Long Live VibeOS!
VibeOS Devlog #4 Hi developers, today I gave VibeOS its biggest update yet. I made two new system apps and one app for VibeStore. Making VibeStore was the hardest task lmao. So basically, I’m not going to reveal much about VibeStore yet, as it is not complete with the apps I’m thinking about. I also made a custom browser for VibeOS called Surf . It is fast like Safari and clean, and it also has tab control. If you noticed the calculator logo on the main dock, it is a secret for now. I’m going to disclose more about it later. I also made a status dock on the right with Wi-Fi status, brightness, battery, etc., and added a control center modal. It shows real-time battery status and Wi-Fi status with ping. I also added more cool customizable widgets. For the next and final phase, my plans are to implement more apps and a fully working music player with a wide variety of artists and songs. I’m thinking about Jaydes, Kendrick, and some others. I will also add dark mode and the taskbar, which should not take much time. I have also planned some features for the WebOS 2 mission because I just do not want to drain my idea list in WebOS 1. And yeah one change which i m seeing is that now, i m not facing any problems while coding and everything is going very smooth, thanks Stardance for helping me revise my web dev skills :) Anyways, GN and long live VibeOS!
VibeOS Devlog #5 Hi developers, VibeOS is fully complete, finally. After the previous devlog i pushed major updates like taskbar, window resizing, more apps, dark mode, wallpapers and much more. As VibeOS is deployed. You can try it at https://vibe-os-lac.vercel.app/ . Thanks
Ships:
VibeOS is Finally Complete This was a really wonderful experience building VibeOS. I made it with both the competition and minimalism in mind, focusing on keeping everything clean, smooth, and useful. The hardest part of this project was aligning everything with a vanilla tech stack. Since I usually work with Node.js and Vite, building this project with vanilla technologies felt refreshing and challenging in a good way. It helped me strengthen my core frontend concepts and made my understanding of vanilla development much cleaner and better. Overall, VibeOS has been an amazing project to work on. I learned a lot throughout the process, improved my development skills, and pushed myself to build something polished and complete. I’m really happy with how it turned out, and I hope VibeOS gets flying colours in the voting!...
|
1793109161.7335584
|
1793195561.7335584
|
|
66146
|
Game Clock by @Eesh-A | Stardance
|
Eesh-A
|
0
|
20.71
|
0
|
[]
|
[{"post_id": 80569, "ts": "202 [{"post_id": 80569, "ts": "2026-10-18T05:34:51Z", "hours": 0.6603, "text": "Added keycaps to my game clock cad model since i forgot to"}, {"post_id": 79690, "ts": "2026-10-15T02:27:16Z", "hours": 7.1692, "text": "Finished the design and everything for my game clock! I finished the code and coded the dino game so hopefully it works!"}, {"post_id": 76270, "ts": "2026-10-03T00:40:12Z", "hours": 6.3414, "text": "Finished the cad for my game clock. The decorations made it take way longer than expected but I think it looks pretty good. I put some dino game, hollow knight and some other designs around the model."}, {"post_id": 74766, "ts": "2026-09-28T06:17:07Z", "hours": 6.5397, "text": "Started Blare project! I’m making a clock you can play games on and just finished the pcb design. The only thing that can go wrong is if the display isn’t high res, but when I search the display up, it did say it could handle games like the dino game etc."}]...
|
Title: Game Clock by @Eesh-A | Stardance
Devlogs: Title: Game Clock by @Eesh-A | Stardance
Devlogs:
Started Blare project! I’m making a clock you can play games on and just finished the pcb design. The only thing that can go wrong is if the display isn’t high res, but when I search the display up, it did say it could handle games like the dino game etc.
Finished the cad for my game clock. The decorations made it take way longer than expected but I think it looks pretty good. I put some dino game, hollow knight and some other designs around the model.
Finished the design and everything for my game clock! I finished the code and coded the dino game so hopefully it works!
Added keycaps to my game clock cad model since i forgot to...
|
1793094752.0430195
|
1793699552.0430195
|
|
1186
|
AppleMusic-Downloader by @Cret | Stardance
|
Cret
|
2
|
31.0
|
408
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T05:44:00Z", "hours": 6.0, "multiplier": 17.21, "payout": 110, "blessing": "neutral", "text": "First, I want to say that this project has surpassed 50,000 users. This year marks the project’s first year, and it has gained widespread popularity on various personal social media platforms and communities in China. My QQ user community has over 1,000 members. By using this downloader, I promise you will like https://amll.cret.uk it is a applemusic-like lryics running in your browser. So try it out; I promise you’ll like it! One thing to note is that my GitHub account was mistakenly suspended. If you need the macOS version and the opencookies.txt plugin, I will put the download links below. macos: https://cdn.hackclub.com/01a0f611-f1e0-79af-b3d1-be9b71d54349/AppleMusicDownloader-macos-arm64.dmg plugin: https://cdn.hackclub.com/01a14d82-54d0-7e29-a5ca-51fd7d0702e1/OpenCookies.txt.crx", "repo": "https://gitlab.com/IHateGitHub/applemusic-downloader", "demo": "https://cdn.hackclub.com/01a0f611-f73e-71f9-a98f-f447038e7ace/AppleMusicDownloader-windows-x64.exe"}, {"ship_num": 2, "ts": "2026-07-09T03:29:12Z", "hours": 25.0, "multiplier": 9.89, "payout": 298, "blessing": "neutral", "text": "The initial phase of this project involved some debugging work. A few days ago, I officially began the refactoring of this project. I removed redundant code and modules, abandoned the cumbersome PyQt, built a standard API backend using FastAPI, and built the web frontend using Next.js. You can run the packaged software now to try it out (don’t forget to install ffmpeg). If you don’t have an Apple Music subscription, DM @Cret on Slack and I’ll provide you with my own cookies.txt file.", "repo": "https://gitlab.com/IHateGitHub/applemusic-downloader", "demo": "https://cdn.hackclub.com/01a0f611-f73e-71f9-a98f-f447038e7ace/AppleMusicDownloader-windows-x64.exe"}]...
|
[{"post_id": 80567, "ts": "202 [{"post_id": 80567, "ts": "2026-10-18T05:29:08Z", "hours": 1.5017, "text": "v2.5.0 just published new feature: TTML lyrics with translate Using asynchronous download scheduling doubles the speed of batch downloads. Accelerate Dolby Atmos format encoding and decoding add “new version” detect feature (This won’t work until my GitHub account is unbanned) amdl cli also optimizedget-lyrics logic and add more and smarter parameter degradation strategies"}, {"post_id": 39266, "ts": "2026-08-02T03:58:06Z", "hours": 4.8944, "text": "I’ve been working on the AppleMusic-Downloader project, primarily debugging a Windows-specific issue where the desktop app would hang during downloads. The root cause turned out to be PyInstaller’s --windowed mode setting sys.stdout and sys.stderr to None , which broke async libraries like httpx and asyncio . The fix was calling AllocConsole() on Windows to allocate a visible console window and properly redirect all three standard streams ( stdin , stdout , stderr ). I also cleaned up unnecessary debug code (log file output, /api/logs endpoint), added step-by-step logging in the download pipeline to help diagnose future issues, fixed a few i18n key mismatches in the frontend, and added a note in both READMEs telling Windows users not to close the console window."}, {"post_id": 25110, "ts": "2026-07-09T03:22:25Z", "hours": 2.2103, "text": "The Dolby format finally downloaded normally. During this stage, copilot helped me debug and test the project.This project is ready to ship"}, {"post_id": 24614, "ts": "2026-07-08T10:15:06Z", "hours": 0.2636, "text": "published to PyPi!"}, {"post_id": 24589, "ts": "2026-07-08T09:21:00Z", "hours": 0.2592, "text": "workflow currently running!!!"}, {"post_id": 24579, "ts": "2026-07-08T08:26:24Z", "hours": 1.0267, "text": "All the rebuild work is complete; it’s time to open the PR."}, {"post_id": 24549, "ts": "2026-07-08T05:54:14Z", "hours": 3.2453, "text": "The interface is ready to use!"}, {"post_id": 23956, "ts": "2026-07-07T05:50:21Z", "hours": 0.6342, "text": "I felt this didn’t quite meet my aesthetic standards for the sidebar, so I decided to use Figma to design the UI."}, {"post_id": 23931, "ts": "2026-07-07T04:17:02Z", "hours": 0.75, "text": "Successful integration of the front-end and back-end."}, {"post_id": 23397, "ts": "2026-07-06T10:19:39Z", "hours": 2.0333, "text": "Remove Windows-specific GUI components and associated files from the project, including CMake configurations, resource files, and source code for the Flutter window implementation. This cleanup streamlines the project structure and eliminates unnecessary dependencies for non-Windows platforms."}, {"post_id": 23317, "ts": "2026-07-06T06:10:04Z", "hours": 1.2036, "text": "I ultimately gave up on using Flutter for frontend development; it was simply too difficult. Instead, I am using Next.js combined with pywebview to build the desktop frontend."}, {"post_id": 22716, "ts": "2026-07-05T09:19:30Z", "hours": 1.66, "text": "I have completed the API construction; in this phase, I encapsulated all of gamdl’s parameters—aligning them with the definitions in core_downloader.py —into a unified API. Next up is learning Flutter for the frontend."}, {"post_id": 22161, "ts": "2026-07-04T14:09:04Z", "hours": 0.845, "text": "Rebuild starting now!!! I’m using flutter for fronted FastAPI for backend"}, {"post_id": 22034, "ts": "2026-07-04T09:04:22Z", "hours": 2.1694, "text": "All preparatory work for the refactoring has been completed. Thanks to DeepSeek for sorting out this “spaghetti code.”"}, {"post_id": 20848, "ts": "2026-07-02T15:47:33Z", "hours": 1.5944, "text": "seems that I can’t fix the atmos download issue : ( but time to rebuild this project, I just made a TODO list"}, {"post_id": 11825, "ts": "2026-06-19T08:16:34Z", "hours": 0.3442, "text": "repair downloader_song_legacy.py"}, {"post_id": 11820, "ts": "2026-06-19T07:33:57Z", "hours": 3.7414, "text": "This conversation tracked the comprehensive refactoring and bug-fixing of the AppleMusic-Downloader project. The work began by diagnosing why CN-region songs failed with a KeyError on extendedAssetUrls — fixed by switching to .get() with a fallback, and adding a webplayback-based stream path for songs without enhancedHls . We then extracted the entire download orchestration from cli.py (a Click-based CLI) into a new core_downloader.py module — a pure Python API with no terminal dependencies — and rewired both cli.py and download_worker.py (the GUI’s QThread) to call it directly, eliminating a class of Windows GUI crashes caused by Click’s stdin / stdout assumptions. We fixed download_worker.py’s variable name bug ( remux_path vs remuxed_path ) that silently dropped song files, normalized Path / str type handling, added CENC stream support (ISO-23001-7 with data:;base64, KIDs) by reconstructing Widevine PSSH boxes and passing real KIDs to mp4decrypt , switched ffmpeg remux from -f ipod to -f mp4 and added automatic fragmentation detection with fallback to aac_at / aac re-encoding for playable output, and added backward-compatible config migration for the renamed codec_song enum. We also fixed the Windows manifest name, updated the PyInstaller .spec with missing hidden imports, and corrected several type annotation issues across models.py, downloader.py, and downloader_song.py. The result is that both standard Widevine songs (e.g., ROSÉ’s toxic till the end ) and CENC-encrypted songs (e.g., Queen’s Under Pressure via the 28:ctrp256 webplayback asset) now download and play correctly across all platforms."}, {"post_id": 8585, "ts": "2026-06-14T08:47:02Z", "hours": 2.8236, "text": "really thanks deepseek help me to rebuild the interface I updated the regular expression to account for Apple changing the location of the index.js file on the Apple Music web interface following WWDC2026. After removing redundant code, I used AI to add cross-platform compatibility support, moving closer to a full project refactor once the holidays are over. I also revamped the UI, implementing a card-stacking layout to make the logs easier to read. Huge thanks to AI—it has made fixing baffling bugs far more efficient."}, {"post_id": 268, "ts": "2026-06-01T14:14:37Z", "hours": 0.3014, "text": "Preparing to add new features and migrate the tech stack for cross-platform builds next month. In this update, I leveraged AI to refine part of the code and manually optimized and removed redundant code."}]...
|
Title: AppleMusic-Downloader by @Cret | Stardance
Title: AppleMusic-Downloader by @Cret | Stardance
Devlogs:
Preparing to add new features and migrate the tech stack for cross-platform builds next month. In this update, I leveraged AI to refine part of the code and manually optimized and removed redundant code.
really thanks deepseek help me to rebuild the interface I updated the regular expression to account for Apple changing the location of the index.js file on the Apple Music web interface following WWDC2026. After removing redundant code, I used AI to add cross-platform compatibility support, moving closer to a full project refactor once the holidays are over. I also revamped the UI, implementing a card-stacking layout to make the logs easier to read. Huge thanks to AI—it has made fixing baffling bugs far more efficient.
This conversation tracked the comprehensive refactoring and bug-fixing of the AppleMusic-Downloader project. The work began by diagnosing why CN-region songs failed with a KeyError on extendedAssetUrls — fixed by switching to .get() with a fallback, and adding a webplayback-based stream path for songs without enhancedHls . We then extracted the entire download orchestration from cli.py (a Click-based CLI) into a new core_downloader.py module — a pure Python API with no terminal dependencies — and rewired both cli.py and download_worker.py (the GUI’s QThread) to call it directly, eliminating a class of Windows GUI crashes caused by Click’s stdin / stdout assumptions. We fixed download_worker.py’s variable name bug ( remux_path vs remuxed_path ) that silently dropped song files, normalized Path / str type handling, added CENC stream support (ISO-23001-7 with data:;base64, KIDs) by reconstructing Widevine PSSH boxes and passing real KIDs to mp4decrypt , switched ffmpeg remux from -f ipod to -f mp4 and added automatic fragmentation detection with fallback to aac_at / aac re-encoding for playable output, and added backward-compatible config migration for the renamed codec_song enum. We also fixed the Windows manifest name, updated the PyInstaller .spec with missing hidden imports, and corrected several type annotation issues across models.py, downloader.py, and downloader_song.py. The result is that both standard Widevine songs (e.g., ROSÉ’s toxic till the end ) and CENC-encrypted songs (e.g., Queen’s Under Pressure via the 28:ctrp256 webplayback asset) now download and play correctly across all platforms.
repair downloader_song_legacy.py
seems that I can’t fix the atmos download issue : ( but time to rebuild this project, I just made a TODO list
All preparatory work for the refactoring has been completed. Thanks to DeepSeek for sorting out this “spaghetti code.”
Rebuild starting now!!! I’m using flutter for fronted FastAPI for backend
I have completed the API construction; in this phase, I encapsulated all of gamdl’s parameters—aligning them with the definitions in core_downloader.py —into a unified API. Next up is learning Flutter for the frontend.
I ultimately gave up on using Flutter for frontend development; it was simply too difficult. Instead, I am using Next.js combined with pywebview to build the desktop frontend.
Remove Windows-specific GUI components and associated files from the project, including CMake configurations, resource files, and source code for the Flutter window implementation. This cleanup streamlines the project structure and eliminates unnecessary dependencies for non-Windows platforms.
Successful integration of the front-end and back-end.
I felt this didn’t quite meet my aesthetic standards for the sidebar, so I decided to use Figma to design the UI.
The interface is ready to use!
All the rebuild work is complete; it’s time to open the PR.
workflow currently running!!!
published to PyPi!
The Dolby format finally downloaded normally. During this stage, copilot helped me debug and test the project.This project is ready to ship
I’ve been working on the AppleMusic-Downloader project, primarily debugging a Windows-specific issue where the desktop app would hang during downloads. The root cause turned out to be PyInstaller’s --windowed mode setting sys.stdout and sys.stderr to None , which broke async libraries like httpx and asyncio . The fix was calling AllocConsole() on Windows to allocate a visible console window and properly redirect all three standard streams ( stdin , stdout , stderr ). I also cleaned up unnecessary debug code (log file output, /api/logs endpoint), added step-by-step logging in the download pipeline to help diagnose future issues, fixed a few i18n key mismatches in the frontend, and added a note in both READMEs telling Windows users not to close the console window.
v2.5.0 just published new feature: TTML lyrics with translate Using asynchronous download scheduling doubles the speed of batch downloads. Accelerate Dolby Atmos format encoding and decoding add “new version” detect feature (This won’t work until my GitHub account is unbanned) amdl cli also optimizedget-lyrics logic and add more and smarter parameter degradation strategies
Ships:
The initial phase of this project involved some debugging work. A few days ago, I officially began the refactoring of this project. I removed redundant code and modules, abandoned the cumbersome PyQt, built a standard API backend using FastAPI, and built the web frontend using Next.js. You can run the packaged software now to try it out (don’t forget to install ffmpeg). If you don’t have an Apple Music subscription, DM @Cret on Slack and I’ll provide you with my own cookies.txt file.
First, I want to say that this project has surpassed 50,000 users. This year marks the project’s first year, and it has gained widespread popularity on various personal social media platforms and communities in China. My QQ user community has over 1,000 members. By using this downloader, I promise you will like https://amll.cret.uk it is a applemusic-like lryics running in your browser. So try it out; I promise you’ll like it! One thing to note is that my GitHub account was mistakenly suspended. If you need the macOS version and the opencookies.txt plugin, I will put the download links below. macos: https://cdn.hackclub.com/01a0f611-f1e0-79af-b3d1-be9b71d54349/AppleMusicDownloader-macos-arm64.dmg plugin: https://cdn.hackclub.com/01a14d82-54d0-7e29-a5ca-51fd7d0702e1/OpenCookies.txt.crx...
|
1793101738.5219295
|
1793188138.5219295
|
|
51772
|
Parallel Plate DriveTrain by @precon | Stardance
|
precon
|
0
|
111.8
|
0
|
[]
|
[{"post_id": 80566, "ts": "202 [{"post_id": 80566, "ts": "2026-10-18T05:22:32Z", "hours": 12.5961, "text": "I had to redesign so much of the turret after testing, i changed the compression from 4 to 3 back to 4mm, and then im now running it 1:1 with the motor. I think this will create a pretty big torque on the bearing stack but we’ll see how it holds up. I also found a new way to constrain the outer bearings which works really well"}, {"post_id": 79696, "ts": "2026-10-15T03:00:33Z", "hours": 10.4431, "text": "even more cad, did electronics so almost done"}, {"post_id": 78639, "ts": "2026-10-11T04:46:50Z", "hours": 17.0306, "text": "did a lot of work to link things together and ensure functionality and reliability"}, {"post_id": 77933, "ts": "2026-10-08T20:42:57Z", "hours": 10.3814, "text": "I worked on the turret more and optimized+printed the index"}, {"post_id": 77482, "ts": "2026-10-07T05:28:11Z", "hours": 12.2506, "text": "I think ive finalized the index design, i updated all the driver components for it, and the geometry is okay. I also got started on the turret hood design"}, {"post_id": 76648, "ts": "2026-10-04T08:00:34Z", "hours": 9.7214, "text": "Had to do lots of redesigns because Fusion apparently hates me. When I update a really big subassembly, I can’t move it back in the timeline far enough so all the features before that update get broken from the projections and the dimensions and stuff. I’ve had to restart twice now. I’ve gotten much better at creating big subassemblies so that it’s much easier to assemble it big piece by piece, but it is still taking a lot of effort. I’m probably going to pull an all-nighter to finish this up and hopefully have a semi-working model before the morning."}, {"post_id": 76054, "ts": "2026-10-02T06:44:41Z", "hours": 4.5253, "text": "worked more on finishing the drivetrain and assembling major sub assemblies"}, {"post_id": 74359, "ts": "2026-09-27T07:27:52Z", "hours": 12.0167, "text": "Worked on master sketch and attaching turret"}, {"post_id": 73900, "ts": "2026-09-26T09:07:19Z", "hours": 5.6, "text": "Finished most of the pollen turret assembly and got it on the robot a bit."}, {"post_id": 73809, "ts": "2026-09-26T02:04:55Z", "hours": 8.9833, "text": "Worked a lot on the turret part, created bearing stacks based off a reference, and started on the shooter. It’s really hard to get the compression and spacings right because there’s a lot of dead zone in the turret bearing stack and the shooter wheel also takes up a lot of space. I also want to try out different things, which will take a bit of time to model."}, {"post_id": 68776, "ts": "2026-09-15T18:51:34Z", "hours": 8.25, "text": "I have finally finished the first version of the drivetrain. Right now it has a 1:4 gear reduction, connected to a 1:3 belt reduction on a 5800rpm motor for a 483 rpm final rpm on a 104mm wheel. The entire setup is on dead axles, with heavily reinforced side plates. I also ensured to optimize space as much as possible which meant organizing both gear trains and the motors in order to maximize space."}]...
|
Title: Parallel Plate DriveTrain by @precon | Star Title: Parallel Plate DriveTrain by @precon | Stardance
Devlogs:
I have finally finished the first version of the drivetrain. Right now it has a 1:4 gear reduction, connected to a 1:3 belt reduction on a 5800rpm motor for a 483 rpm final rpm on a 104mm wheel. The entire setup is on dead axles, with heavily reinforced side plates. I also ensured to optimize space as much as possible which meant organizing both gear trains and the motors in order to maximize space.
Worked a lot on the turret part, created bearing stacks based off a reference, and started on the shooter. It’s really hard to get the compression and spacings right because there’s a lot of dead zone in the turret bearing stack and the shooter wheel also takes up a lot of space. I also want to try out different things, which will take a bit of time to model.
Finished most of the pollen turret assembly and got it on the robot a bit.
Worked on master sketch and attaching turret
worked more on finishing the drivetrain and assembling major sub assemblies
Had to do lots of redesigns because Fusion apparently hates me. When I update a really big subassembly, I can’t move it back in the timeline far enough so all the features before that update get broken from the projections and the dimensions and stuff. I’ve had to restart twice now. I’ve gotten much better at creating big subassemblies so that it’s much easier to assemble it big piece by piece, but it is still taking a lot of effort. I’m probably going to pull an all-nighter to finish this up and hopefully have a semi-working model before the morning.
I think ive finalized the index design, i updated all the driver components for it, and the geometry is okay. I also got started on the turret hood design
I worked on the turret more and optimized+printed the index
did a lot of work to link things together and ensure functionality and reliability
even more cad, did electronics so almost done
I had to redesign so much of the turret after testing, i changed the compression from 4 to 3 back to 4mm, and then im now running it 1:1 with the motor. I think this will create a pretty big torque on the bearing stack but we’ll see how it holds up. I also found a new way to constrain the outer bearings which works really well...
|
1792684241.1733289
|
1793289041.1733289
|
|
70219
|
A Simple Conservation by @Reyansh11 | Stardance
|
Reyansh11
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T05:49:36Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made this project as I always wanted to make one simple and fun project I was a beginner with no experience in coding but made this project because the only reason I felt it fun", "repo": "https://github.com/Reyansh-1111/Second2/blob/main/gitattributes.py", "demo": "https://gitpod.io/#https://github.com/Reyansh-1111/Second2"}]...
|
[{"post_id": 80563, "ts": "202 [{"post_id": 80563, "ts": "2026-10-18T05:17:41Z", "hours": 0.3028, "text": "A fun and interactive conversation, (the timer shows very less time because I accidently deleted the repository folder and created a new one and pasted the code saved from before, the actual time is like 2 hours)"}]...
|
Title: A Simple Conservation by @Reyansh11 | Stard Title: A Simple Conservation by @Reyansh11 | Stardance
Devlogs:
A fun and interactive conversation, (the timer shows very less time because I accidently deleted the repository folder and created a new one and pasted the code saved from before, the actual time is like 2 hours)
Ships:
I made this project as I always wanted to make one simple and fun project I was a beginner with no experience in coding but made this project because the only reason I felt it fun...
|
1793199270.2474637
|
1793285670.2474637
|
|
68527
|
MyWebsite! by @avm | Stardance
|
avm
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T05:19:35Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a personal website. Thanks to this I learned HTML and CSS. I made 3 sections in my website (ABOUT ME, PROJECTS, AND FUTURE) I made buttons that worked and take the user into the section inside the main website.", "repo": "https://github.com/3amstudiosgames-commits/PersonalWebsite", "demo": "https://3amstudiosgames-commits.github.io/PersonalWebsite/"}]...
|
[{"post_id": 80562, "ts": "202 [{"post_id": 80562, "ts": "2026-10-18T05:16:28Z", "hours": 0.7719, "text": "I worked on making the button work (I f you clicked it it goes into their section) I added more information project and future. I did my READ.Me better and maybe someone will se it and will check out the sites that helped me. This is my final Dev Log."}, {"post_id": 77985, "ts": "2026-10-09T03:42:48Z", "hours": 2.4825, "text": "Currently trying to polish and add stuff to the website. I am using W3Schools Tryit Editor to check how the website would look (its faster) and I have also been updating the github repository to check in on the web! Currently trying to learn how grid and other stuff works"}, {"post_id": 77894, "ts": "2026-10-08T18:02:13Z", "hours": 0.3058, "text": "Learning Basics of HTML and CSS. Currently I am amazed at how easy doing a basic website is! Right now I will do the basics with HTML and later further the design with CSS. My first time coding HTML below"}]...
|
Title: MyWebsite! by @avm | Stardance
Devlogs:
Le Title: MyWebsite! by @avm | Stardance
Devlogs:
Learning Basics of HTML and CSS. Currently I am amazed at how easy doing a basic website is! Right now I will do the basics with HTML and later further the design with CSS. My first time coding HTML below
Currently trying to polish and add stuff to the website. I am using W3Schools Tryit Editor to check how the website would look (its faster) and I have also been updating the github repository to check in on the web! Currently trying to learn how grid and other stuff works
I worked on making the button work (I f you clicked it it goes into their section) I added more information project and future. I did my READ.Me better and maybe someone will se it and will check out the sites that helped me. This is my final Dev Log.
Ships:
I made a personal website. Thanks to this I learned HTML and CSS. I made 3 sections in my website (ABOUT ME, PROJECTS, AND FUTURE) I made buttons that worked and take the user into the section inside the main website....
|
1793155861.2337859
|
1793242261.2337859
|
|
70270
|
Auth75(Lumethras) by @Leon | Stardance
|
Leon
|
1
|
6.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T05:17:58Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "BUILDING LUMETHRAS AUTH75 with @Lumethra ofc as descibed in the one and only devlog, we are building Lumethras, never built before, auth75 keyboard, a beautifully designed keyboard 75% keyboard that helps you authenticate in any os with the framework fingerprint sensor (yeeeeee) ( https://lapse.hackclub.com/timelapse/QvyXF2dPZufu ) here the lapse link of us building that entire thing!!!", "repo": "https://github.com/Lumethra/Auth75", "demo": ""}]...
|
[{"post_id": 80561, "ts": "202 [{"post_id": 80561, "ts": "2026-10-18T05:11:18Z", "hours": 5.5111, "text": "OLD PROJECT (not mine) BUT BUILDING IT!!!! quick disclaimer: this is my friends maximilians @Lumethra ’s project that he designed and we are now building together; We are building 2 pieces of it, one for him and one for a friend! AHHHHHHH (the first soldering) this was basically a teamwork between us two, him prepering, me putting the hotswapsockets in, him sanaty checking my work (image 4). This was a slight pain, but really doable (ignoring the fact he missed a ground connection in the pcb we had to wire manually) less AHHH (for me) maxi was doing some fixing/installing of the firmware he coded for the thing we just soldered together, he also put in the keycaps. He himself said that the firmware is very buggy but works, even the auth with the framework fingerprint sensor he planed for this project; one quote: never change a running system AHHHH (for me) while he was doing that (after like 20 min) i thought id optimise our workflow by heading downstairs and soldering the second of 2 keyboards. I was down there for 1h30min alone, with my headphones, they screamed a mix of katy perry, radiohead, linkin park and german rap into my ears, letting me completely focus on soldering (the first image shows me in the basement after like 70 min) the only big mistake while being so focused (frfr) i soldered the hotswapsocket for the backspace key in the wrong way, without noticing this became later called the ### forwoardtime ### (which later let us to resolder that piece while being only held alive by 2 energy drinks and no sleep at all making it a backspace again (yeee). the last thing left was testing both keyboards (ofc without keycaps bc why would we) (thats image 2) and everything worked out fine after the backspace was fixed. So we can finally say that Maxi and a friend of ours ( @Chroma ) have a custom keyboard designed by maxi (and the case by chroma) and built by sleepdeprived us. yeeeeeeeee"}]...
|
Title: Auth75(Lumethras) by @Leon | Stardance
Dev Title: Auth75(Lumethras) by @Leon | Stardance
Devlogs:
OLD PROJECT (not mine) BUT BUILDING IT!!!! quick disclaimer: this is my friends maximilians @Lumethra ’s project that he designed and we are now building together; We are building 2 pieces of it, one for him and one for a friend! AHHHHHHH (the first soldering) this was basically a teamwork between us two, him prepering, me putting the hotswapsockets in, him sanaty checking my work (image 4). This was a slight pain, but really doable (ignoring the fact he missed a ground connection in the pcb we had to wire manually) less AHHH (for me) maxi was doing some fixing/installing of the firmware he coded for the thing we just soldered together, he also put in the keycaps. He himself said that the firmware is very buggy but works, even the auth with the framework fingerprint sensor he planed for this project; one quote: never change a running system AHHHH (for me) while he was doing that (after like 20 min) i thought id optimise our workflow by heading downstairs and soldering the second of 2 keyboards. I was down there for 1h30min alone, with my headphones, they screamed a mix of katy perry, radiohead, linkin park and german rap into my ears, letting me completely focus on soldering (the first image shows me in the basement after like 70 min) the only big mistake while being so focused (frfr) i soldered the hotswapsocket for the backspace key in the wrong way, without noticing this became later called the ### forwoardtime ### (which later let us to resolder that piece while being only held alive by 2 energy drinks and no sleep at all making it a backspace again (yeee). the last thing left was testing both keyboards (ofc without keycaps bc why would we) (thats image 2) and everything worked out fine after the backspace was fixed. So we can finally say that Maxi and a friend of ours ( @Chroma ) have a custom keyboard designed by maxi (and the case by chroma) and built by sleepdeprived us. yeeeeeeeee
Ships:
BUILDING LUMETHRAS AUTH75 with @Lumethra ofc as descibed in the one and only devlog, we are building Lumethras, never built before, auth75 keyboard, a beautifully designed keyboard 75% keyboard that helps you authenticate in any os with the framework fingerprint sensor (yeeeeee) ( https://lapse.hackclub.com/timelapse/QvyXF2dPZufu ) here the lapse link of us building that entire thing!!!...
|
1793224339.0299675
|
1793310739.0299675
|
|
65561
|
MY FIRST WEBSITE by @Dhanush_Mundra | Stardance
|
Dhanush_Mundra
|
2
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-18T05:09:52Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "So this is a my personal website in which I told about myself. I have 3 section. About me, my hobbies and my dislikes and the silly stuff i do and the projects i made. S, please visit the website and give an honest rating. Below is the screenshot of my next project", "repo": "https://github.com/mundradhanush-lgtm/MY-PERSONAL-WEBSITE", "demo": "https://mundradhanush-lgtm.github.io/MY-PERSONAL-WEBSITE/"}, {"ship_num": 2, "ts": "2026-09-26T06:19:04Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Finally, I have created a website all by myself limiting the use of AI. This was so fun to build this website. This could be the best project for me as I am a person who loves to talk about himself and when I looked at the project I was like OH WOW I JUST FOUND A PROJECTS WHICH SHOULD AND MEANT TO BE MAD BY ME! This was such a great experience. This was also my first time using HTML and CSS together and building and deploying a website. I just want to say this was the best experience.", "repo": "https://github.com/mundradhanush-lgtm/MY-PERSONAL-WEBSITE", "demo": "https://mundradhanush-lgtm.github.io/MY-PERSONAL-WEBSITE/"}]...
|
[{"post_id": 80559, "ts": "202 [{"post_id": 80559, "ts": "2026-10-18T05:07:51Z", "hours": 0.3217, "text": "thank you so much for the stardust and the 11 dollar grant!! Below is the screen shot of my next project"}, {"post_id": 73848, "ts": "2026-09-26T05:07:28Z", "hours": 0.4517, "text": "ok so, I have completed the third page of my website and with this I have completed the website. It was an easy but an interesting thing. It took me 2 days to complete it but it was very very fun to do this and to tell about me."}, {"post_id": 73716, "ts": "2026-09-25T19:31:07Z", "hours": 0.9997, "text": "ok so I ae now created the second page of my website which is about my projects. In that page I have told about the projects that I have made and the projects that I am working on. The third and the last page would be about the silly things I do when I am bored."}, {"post_id": 73562, "ts": "2026-09-25T12:17:13Z", "hours": 2.1006, "text": "So I have created my first page of personal website(excluding the images as i would add them at the last). In the first page I have added the sections of my favourites and non-favourites and also the navigation bar. I have introduced myself also in that page. ow my next page would be of my projects and the third one would be of the silly stuff i do. So, meet you in the next devlog."}]...
|
Title: MY FIRST WEBSITE by @Dhanush_Mundra | Stard Title: MY FIRST WEBSITE by @Dhanush_Mundra | Stardance
Devlogs:
So I have created my first page of personal website(excluding the images as i would add them at the last). In the first page I have added the sections of my favourites and non-favourites and also the navigation bar. I have introduced myself also in that page. ow my next page would be of my projects and the third one would be of the silly stuff i do. So, meet you in the next devlog.
ok so I ae now created the second page of my website which is about my projects. In that page I have told about the projects that I have made and the projects that I am working on. The third and the last page would be about the silly things I do when I am bored.
ok so, I have completed the third page of my website and with this I have completed the website. It was an easy but an interesting thing. It took me 2 days to complete it but it was very very fun to do this and to tell about me.
thank you so much for the stardust and the 11 dollar grant!! Below is the screen shot of my next project
Ships:
Finally, I have created a website all by myself limiting the use of AI. This was so fun to build this website. This could be the best project for me as I am a person who loves to talk about himself and when I looked at the project I was like OH WOW I JUST FOUND A PROJECTS WHICH SHOULD AND MEANT TO BE MAD BY ME! This was such a great experience. This was also my first time using HTML and CSS together and building and deploying a website. I just want to say this was the best experience.
So this is a my personal website in which I told about myself. I have 3 section. About me, my hobbies and my dislikes and the silly stuff i do and the projects i made. S, please visit the website and give an honest rating. Below is the screenshot of my next project...
|
1793213786.1733537
|
1793300186.1733537
|
|
42167
|
CAFE SHIFT by @Lalith | Stardance
|
Lalith
|
1
|
47.61
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-31T10:36:55Z", "hours": 13.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is a 3D website on my hackathon project", "repo": "https://github.com/Hustlenix/cafe-shift-rush-hour", "demo": "https://cafe-shift-rush-hour.vercel.app/"}]...
|
[{"post_id": 80557, "ts": "202 [{"post_id": 80557, "ts": "2026-10-18T04:43:44Z", "hours": 5.0358, "text": "DEVLOG 1: Plan: What I am planning to do is an pixl kinda game which has jessica in it, and an ai chatbot of jessica at the corener of the game, and when you order the food, you can interact with jessica too."}, {"post_id": 69599, "ts": "2026-09-17T11:59:28Z", "hours": 14.8758, "text": "As i felt that my every project and stuff is getting regected, so i deleted everything and started it from first and i think it is a good start. Stay tuned gng"}, {"post_id": 42602, "ts": "2026-08-07T12:49:41Z", "hours": 1.175, "text": "This was juat a simple website trial thing in start, but now it is my whole life style. I spent my last hour trying to figure where to add the 3d robot and idk how to use it and make it work it is just randomly moving and getting worse, and i thought that AI project cycle is so hard to build and integrate it to my website so i’ve programmed a AI assistance thingy how is it?🤣😭"}, {"post_id": 42338, "ts": "2026-08-07T00:39:23Z", "hours": 0.8786, "text": "Simulating the physical robot before we build it! We’re building a physical ocean-cleaning robot for a hackathon, but testing hardware mechanics in real water takes time. So I decided to build a full 3D WebGL simulator right in the browserand make it as a website!Added ocean floor debris (“crap”) and configured the robot entity to simulate autonomous cleanup routes.Programmed custom lighting and exponential underwater fog (THREE.FogExp2) to mimic deep water light decay.Tweaked the rendering loop to run smoothly at 60 FPS without dropping frames. Just tryna add an interactive HUD and keyboard controls so users can pilot the guardian themselves. Try it out in: hustlenix.github.io/aquaguardian! Huge shoutout to https://poly.pizza/m/QCm7qe9uNJ as thats where i got the robo, if not i wouldn’t come this far unto building a 3d robo."}, {"post_id": 42313, "ts": "2026-08-06T23:42:59Z", "hours": 0.9228, "text": "I just changed the background and to stimulate our real hardware project I have added some crap to clean up, and also a robot to clean up the crap"}, {"post_id": 41987, "ts": "2026-08-06T15:05:23Z", "hours": 0.7097, "text": "Tried something new, Today i tried to add some new 3D objects to make it evn cooler, changed the background for oceanic blue, and programmed a robot that is tryna simulate our robot that we are gonna build"}, {"post_id": 41931, "ts": "2026-08-06T13:36:58Z", "hours": 2.2569, "text": "Just a normal day continuously verifing changes that don’t break the project😅😭."}, {"post_id": 41684, "ts": "2026-08-06T01:51:53Z", "hours": 1.6992, "text": "hour 2 of “i have no plan i just opened the laptop” 💻no new feature, no bug to fix, just poking at AquaGuardian because i missed it lol. tweaked some lighting, stared at the robot for a solid 10 min like it owes me money, probably broke something i won’t notice till 2am. that’s the whole update. sometimes you code for a reason, sometimes you just code hustlenix.github.io/aquaguardian 🤖"}, {"post_id": 41425, "ts": "2026-08-05T16:52:57Z", "hours": 1.2886, "text": "I built an entire OCEAN inside your browser, scroll down and you’re literally diving — deeper water, real fish, glowing coral, and our lil guardian robot cleaning trash off the seafloor 🤣. no video, no images, just live 3D running at 60fps. took 1 month, 42 commits, and my whole sleep schedule. hustlenix.github.io/aquaguardian and here is a random AI image on it on how we are assuming it should work and look like."}, {"post_id": 41316, "ts": "2026-08-05T13:43:05Z", "hours": 0.4456, "text": "Wake, Eat, Code, Sleep, Repeat…………………………….."}, {"post_id": 39431, "ts": "2026-08-02T11:55:35Z", "hours": 0.5833, "text": "Our goals for cleaning the oceans"}, {"post_id": 38997, "ts": "2026-08-01T17:03:33Z", "hours": 1.0408, "text": "Finally"}, {"post_id": 38707, "ts": "2026-08-01T07:44:56Z", "hours": 0.7222, "text": "Finally cooked up a W Read Me file"}, {"post_id": 38692, "ts": "2026-08-01T06:31:56Z", "hours": 1.1536, "text": "Finally finished it, ig……………………………….."}, {"post_id": 38630, "ts": "2026-08-01T03:51:10Z", "hours": 0.4208, "text": "When the code is not coding😭😭💔"}, {"post_id": 38436, "ts": "2026-07-31T19:55:18Z", "hours": 1.4039, "text": "Finally added a Read me file"}, {"post_id": 37962, "ts": "2026-07-31T01:02:05Z", "hours": 12.7486, "text": "Just trying new things……………………."}]...
|
Title: CAFE SHIFT by @Lalith | Stardance
Devlogs: Title: CAFE SHIFT by @Lalith | Stardance
Devlogs:
Just trying new things…………………….
Finally added a Read me file
When the code is not coding😭😭💔
Finally finished it, ig………………………………..
Finally cooked up a W Read Me file
Finally
Our goals for cleaning the oceans
Wake, Eat, Code, Sleep, Repeat……………………………..
I built an entire OCEAN inside your browser, scroll down and you’re literally diving — deeper water, real fish, glowing coral, and our lil guardian robot cleaning trash off the seafloor 🤣. no video, no images, just live 3D running at 60fps. took 1 month, 42 commits, and my whole sleep schedule. hustlenix.github.io/aquaguardian and here is a random AI image on it on how we are assuming it should work and look like.
hour 2 of “i have no plan i just opened the laptop” 💻no new feature, no bug to fix, just poking at AquaGuardian because i missed it lol. tweaked some lighting, stared at the robot for a solid 10 min like it owes me money, probably broke something i won’t notice till 2am. that’s the whole update. sometimes you code for a reason, sometimes you just code hustlenix.github.io/aquaguardian 🤖
Just a normal day continuously verifing changes that don’t break the project😅😭.
Tried something new, Today i tried to add some new 3D objects to make it evn cooler, changed the background for oceanic blue, and programmed a robot that is tryna simulate our robot that we are gonna build
I just changed the background and to stimulate our real hardware project I have added some crap to clean up, and also a robot to clean up the crap
Simulating the physical robot before we build it! We’re building a physical ocean-cleaning robot for a hackathon, but testing hardware mechanics in real water takes time. So I decided to build a full 3D WebGL simulator right in the browserand make it as a website!Added ocean floor debris (“crap”) and configured the robot entity to simulate autonomous cleanup routes.Programmed custom lighting and exponential underwater fog (THREE.FogExp2) to mimic deep water light decay.Tweaked the rendering loop to run smoothly at 60 FPS without dropping frames. Just tryna add an interactive HUD and keyboard controls so users can pilot the guardian themselves. Try it out in: hustlenix.github.io/aquaguardian! Huge shoutout to https://poly.pizza/m/QCm7qe9uNJ as thats where i got the robo, if not i wouldn’t come this far unto building a 3d robo.
This was juat a simple website trial thing in start, but now it is my whole life style. I spent my last hour trying to figure where to add the 3d robot and idk how to use it and make it work it is just randomly moving and getting worse, and i thought that AI project cycle is so hard to build and integrate it to my website so i’ve programmed a AI assistance thingy how is it?🤣😭
As i felt that my every project and stuff is getting regected, so i deleted everything and started it from first and i think it is a good start. Stay tuned gng
DEVLOG 1: Plan: What I am planning to do is an pixl kinda game which has jessica in it, and an ai chatbot of jessica at the corener of the game, and when you order the food, you can interact with jessica too.
Ships:
This is a 3D website on my hackathon project...
|
1793108904.8079953
|
1793195304.8079953
|