You are browsing as a guest. Sign up (or log in) to start making projects!

saminsiddiqui

@saminsiddiqui

Joined June 2nd, 2026

  • 19Devlogs
  • 5Projects
  • 5Ships
  • 45Votes
Planes & Computers all the way!
Ship Changes requested

The Javelin Ballistics Desk is basically my personal terminal with a working projectile simulator at the centre of it. There are five sliders that set launch velocity, angle, gravity, drag and headwind, and the desk integrates the entire flight forward before it draws anything so the apogee, range, flight time and impact velocity on the readout are measured off the exact arc the projectile flies rather than calculated from a formula beside it.

And because this was my first physics‑to‑code project, I couldn’t resist layering in references from the worlds that taught me how arcs feel i.e. the fluid movement of Titanfall 2, and the war‑torn trajectories of 86 etc. Together they gave the desk its character.

Try project → See source code →
Open comments for this post

28m 22s logged

So, I finalized the full interactive telemetry feature set for the terminal. The most important thing that I did in this session was that I implemented an asynchronous text-scramble packet decryption engine with audio-synthesized cipher ticks on hover and initialization.

Also, I Added a three-stage CRT scanline filter controller (HIGH, LOW, OFF) hotkeyed to [V], along with an on-screen tactical HUD action toast for real-time keystroke feedback.

0
0
9
Open comments for this post

59m 26s logged

This was probably the most effective one hour that I spent coding. I basically upgraded the terminal with client-side web audio synthesis and a trajectory comparison memory bank. I built procedural audio nodes that synthesize mechanical relay clicks, launch charge sweeps, and impact pings without external audio files.

I also added ghost trajectory logging so operators can record and visually compare up to five distinct ballistic arcs on canvas with live apogee and range comparisons. Also, I added keyboard hotkeys (Space, R, S, C, M) and animated radar sweep beams across the coordinate horizon.

0
0
2
Open comments for this post

1h 18m 41s logged

So basically, I got the foundational terminal interface running for my Personal Website. After that, I built a high contrast tactical workstation with 100% vanilla HTML and CSS.

0
0
2
Ship

OWLT is basically a WebOS shaped like a Deep Space Network ground station. You acquire the carrier and then three consoles come up over a starfield, and you command a probe in orbit at Jupiter.

OWLT is the abbreviation for one-way light time. We type a verb into UPLINK and it is stamped with a send time, an arrival time and a resolution time in mission seconds. The rail counts the delay down, a marker crawls across the in-flight strip, and on the orbit plot you can watch the pip physically cross the gap between the two planets. Nothing on screen reports a value the spacecraft has not confirmed i.e. COMMANDED and ACKNOWLEDGED are separate readouts and they are allowed to disagree for an hour and a half.

Time is compressed so that we are not actually waiting 43 minutes but compression changes how mission time maps to wall time. There is no instant mode and there never will be.

The sky is generated from a seed phrase and the carrier tone is synthesised at runtime. There are four consoles so far with a settings console, an operator log, a DSKY calculator, progressive image downlink and a mission planner to come.

Try project → See source code →
Open comments for this post

51m 2s logged

This is the final devlog for the WebOS 1 mission. The station has a voice now i.e. pressing a key at the boot gate runs a real acquisition sequence. Also, Keying the transmitter gives you a blip and forty-three minutes later the acknowledgement comes back as a two-tone chirp, so you can hear the round trip close even with every console shut.

I also rebuilt the oscilloscope after realising it looked wrong for a stupid reason. The phosphor was fading about five times faster than the beam could draw so only a fifth of the trace ever existed at once. Slowing the decay to match the sweep rate fixed it instantly and it now behaves like an actual CRT with the trace dimming behind the beam instead of disappearing.

0
0
3
Open comments for this post

1h 32m 5s logged

This is the second update on OWLT.

The clock is running now and the light time mechanic actually works. Type a “VERB” into UPLINK and the command takes 43 mission minutes to reach Jupiter.

None of that 43 minutes is invented. Both bodies are propagated on circular orbits and the separation comes out at 777 million kilometres and dividing by the speed of light gives 43:12. It drifts down by a second every eleven thousand mission seconds because Earth is closing on Jupiter at 27 km/s.

0
0
27
Open comments for this post

2h 0m 59s logged

I basically got the shell working today. There are three draggable consoles on a seeded starfield under a fixed instrument rail and a boot gate that holds until you acquire the carrier.

The part that took the longest and was the most difficult was working out the fact that a console shoved off the right edge has to be resized when the window itself resizes.

0
0
4
Ship

Skywritten turns a birthday into an astronomical biography. You basically enter a date, and it pulls the Astronomy Picture of the Day, DSCOVR’s full-disk Earth imagery, solar flare records, and exoplanet discoveries from that exact day. It then weaves them into one narrative that you can send to someone as a permanent link.

There are three ways (for now) that it can arrive: a cinematic scroll, a storybook you turn page by page, or a wax-sealed letter the recipient opens. If you are testing it, try the Letter template. It’s the one I put the most effort into.

The hardest part wasn’t the features. It was making it fast enough to be worth sending. A page was loading around 20 MB on mobile because the APOD indexer was storing print resolution masters (some over 15 MB!). Also, every page load was fetching four complete NASA archives just to display one day. So, I basically ended up sharding all four into 366 files keyed by month and day. So, a January 20 birthday fetches 01-20.json instead of the whole thing. That took the data payload from 3,210 KB to 47 KB, and the page from 20 MB to around 1 MB.

The thing I’m most pleased with is something small. I found out that NASA’s own metadata is wrong more often than you would expect. Entries labelled as images that are actually videos, with a play button baked into the still. One APOD entry is an animated GIF of a full lunar cycle and any thumbnail extracted from it came out solid black because the first frame is a new moon. Getting those right took a lot longer than building the templates did.

If you want to test it properly: pick a date before 2000 to see how it handles years the archive doesn’t fully cover and share a gift link somewhere so you can see the recipient view. It’s read only, and the person receiving it can export a story card of their own.

  • 8 devlogs
  • 42h
  • 18.77x multiplier
  • 786 Stardust
Try project → See source code →
Open comments for this post

5h 20m 27s logged

I spent the last couple of days fixing a lot of bugs and also made some polishes here and there.

  1. Page weight went from about 20 MB to around 1 MB on mobile.
  2. The data payload went from 3210 KB to around 47 KB.
  3. The gift links went from three KV writes to just one.
  4. Fixed the date field being invisible on Android.
  5. Some APOD entries are GIFs. They exported in the gift card as black rectangles. I fixed it by requesting a mid-sequence frame plus a luminance check on the export as a backstop.

Previews were broken till this phase, so I fixed them as well through routing them through a proxy at a declared 1200×630. Also, some more polishes here and there. I do think it is finally ready to ship!!!

0
0
35
Open comments for this post

3h 45m 48s logged

Alright, so today was basically making some more fixes and polishing. I completely rebuilt the recipient experience into a true read-only unboxing view. And I kept the interactive wax seal while stripping out editor pickers and replaced collapsed Chrome Android date inputs with a bespoke calendar overlay.

After that, I fixed the near invisible scrollbars in the Keepsake letter template, corrected parchment character counter styling, and revamped exported story cards so that the personal messages take center stage alongside cosmic vitals like Lunar Phase and Solar Revolutions.

Also, I gave the AI rewrite pipeline a massive efficiency boost by trimming max_tokens from 4096 down to 1600 to prevent Groq TPM ceiling throttling, capping server-side output at 600 characters, and tuning temperature to 0.55 for faster, more consistent outputs.

I came across a lot of more bugs that needs fixing, so I am not sure if I can ship it today. Maybe a couple of more days…

0
0
62
Open comments for this post

3h 15m 18s logged

Just finished making the Keepsake letter template. The letter experience opens with an interactive envelope scene built using 3D CSS transforms. Like other templates, users can also customize their letters in real time using client-side image carousels and alternate year pickers.

I have also made the AI rewrite feature functional. I also added a 150 word limit and a precise system prompt to optimize token usage. There are some bugs regarding the UI in the mobile view. I will fix those soon

0
0
56
Open comments for this post

7h 47m 43s logged

Hey everyone!

Making another update on Skywritten. First of all, I finished the ‘1080×1920 Story Card Exporter’. Basically, when you click Export Story Card, you will get a 1080×1920 high-res PNG tailored for Instagram Stories.

After that, there were some mobile view bugs. I spent some time fixing that and polishing the app. The Storybook template needed a lot of fixes in the mobile view as there were overlapping issues due to the first page being transparent.

Finally, I finished writing the Cloudflare Worker logic for our AI rewrite feature.

0
0
16
Open comments for this post

8h 35m 54s logged

Heyyy everyone!

I wanted to make a quick update on Skywritten. The past few days were quite huge for the frontend architecture. We went from a single APOD viewer to a fully modular multi-source app with two distinct presentation shells!

Moreover, the Storybook Template is live. Instead of a continuous scroll, it renders a tactile 3D book using hardware-accelerated CSS rotateY transforms. We can flip pages using on screen controls, left/right keyboard arrows, or touch swipes on mobile.

I also implemented Dynamic Captioning and Narrative Syncing as a quality-of-life improvement.

0
0
5
Open comments for this post

7h 17m 30s logged

Working with NASA’s API limits is indeed a hassle. I basically solved NASA API rate limits, eliminated video rendering bugs, and built a fast local lookup table containing every authentic APOD space photo published since June 1995.

Other than that, I had to compress 31 years of astronomical metadata into a dense, minified static asset.

This project will take more time than I thought. But I am excited to implement all of the features I have in mind!

0
0
12
Open comments for this post

3h 45m 2s logged

First of all, I built a template router to “lazy load” template styles and scripts on demand. Assets are injected directly into the document head only when triggered, preventing initial DOM bloat.

After that, I integrated zero dependency JavaScript math directly to compute real-time cosmic displacement (kilometers traveled through space since birth) and exact lunar phase illumination.

Finally, I built cosmic-scroll as a template using hardware-accelerated IntersectionObserver reveals (will-change: transform, opacity) for smooth 60fps mobile scrolling, complete with an inline-editable narrative interface.

0
0
5
Open comments for this post

2h 3m 42s logged

So basically, I finalized the core architecture and UI foundation for skywritten. After that, I bypassed generic frontend frameworks entirely to build a custom and highly optimized HTML/CSS shell utilizing absolute mathematical resets.

Also completed the raw math for the generative ambient starfield and implementing a deterministic PRNG (cyrb128 + mulberry32) so the visual backdrop remains perfectly mathematically consistent across all devices.

0
0
4
Ship Changes requested

AeroGlass XAI is a predictive maintenance and Explainable AI (XAI) dashboard built for the aerospace industry, analyzing turbofan engine degradation.

At its core, the project utilizes a Bidirectional Long Short-Term Memory (BiLSTM) neural network trained on the NASA CMAPSS dataset to predict the Remaining Useful Life (RUL) of active engines. To ensure the model’s decisions are transparent for aviation technicians, the system integrates Temporal Attention mechanisms and Sensor-Level SHAP values to highlight exactly which telemetry sensors are driving the degradation predictions.

  • Deployment Note for Shipwrights:
    The application is hosted on a dedicated Hack Club Nest Linux container to ensure instant, 24/7 uptime. While the core AI logic, data loading, and metric calculations (like the active fleet and critical engine counts) are processing perfectly, the Nest reverse proxy is currently blocking the dynamic JS imports for some of the heavier Plotly graphics. The structural AI implementation is fully functional under the hood!
  • 1 devlog
  • 1h
  • 9.07x multiplier
  • 8 Stardust
Try project → See source code →
Open comments for this post

52m 37s logged

Migrated AeroGlass XAI to a Dedicated Server (Hack Club Nest)

The Nest server uses an aggressive reverse proxy that is currently rate-limiting some of the dynamic JavaScript chunks required to render the heavy Plotly/SHAP visualizations.

0
0
5
Ship Changes requested

What I made: I made AeroGlass XAI which is an enterprise-grade predictive maintenance dashboard that forecasts aerospace engine failures using a custom Temporal Attention BiLSTM and Explainable AI (SHAP).

The biggest challenge: Well, the biggest challenge to me was the streaming heavy, multi-dimensional tensor arrays in real-time without crashing Streamlit’s lightweight free-tier servers. I solved this by engineering a custom caching pipeline utilizing NumPy’s mmap_mode to read data directly from the disk which completely eliminated RAM bloat.

What I’m proud of: Proving the fact that AI doesn’t have to be an uninterpretable “Black Box.” I’m proud of how the dashboard visually translates complex neural network weights into actionable, physical mechanical insights (e.g. isolating thermal stress vs. rotational wear) and calculates the exact financial ROI of those predictions.

How to test it: Simply click “Try project”-no installation required! Use the sidebar to navigate to the Live Telemetry Simulator to watch the models race in real time or check out the Operational ROI Calculator.
(Note: If the Streamlit server has been inactive, it may take ~30 seconds to wake up).

  • 4 devlogs
  • 9h
  • 13.41x multiplier
  • 121 Stardust
Try project → See source code →
Loading more…

Followers

Loading…