DEV Community

Cover image for Day 107 of Learning MERN Stack
Ali Hamza
Ali Hamza

Posted on

Day 107 of Learning MERN Stack

Hello Dev Community! 👋

It is officially Day 107 of my software engineering run! Right after deploying my Flying Car simulator yesterday, I have stepped into another high-energy 2D project: Architecting a Top-Down Infinite Runner Game completely using Pure HTML, CSS, and Vanilla JavaScript! 🏃‍♂️⚡

Before injecting computational movement loops or physics checks, a robust gaming architecture requires a rock-solid structural grid setup. Today was all about blueprinting lanes, character alignments, and dynamic sidebar panels.


🧠 Deconstructing the Day 107 Track Architecture

As displayed live inside my application runtime framework in "Screenshot (242).jpg", today's milestone focused heavily on establishing an organized, pixel-perfect layout blueprint:

1. 4-Lane Track Grid & Boundary Setup

  • Engineered a vertical red athletic track structure accurately separated into 4 functional lanes using clean HTML/CSS blocks.
  • Vector positions are locked in for the back-view runner sprite, currently initialized inside the second track corridor.
  • Rendered individual overhead obstacle hurdles at the top boundary, perfectly prepping them to receive upcoming asynchronous downward scrolling equations.

2. Live Metric Management Panel

  • Designed an elegant administrative sidebar panel container to host global state nodes on the right:
    • Digital Game Timer: Instantiated to calculate running session times natively (00:00:01).
    • Media Volume Controller: Wired a custom range input element to control audio output on upcoming running sound assets.
    • State Nodes: Integrated clean tracking frames for real-time monitoring of Levels and Score metrics during active sessions.

💡 The Architectural Strategy: Grid Consistency Before Logic Execution

Just like yesterday's project launch, my engineering strategy relies on setting up complete visual accuracy before connecting event loops. By ensuring the 4 lanes are balanced, the hurdles are correctly offset, and the control nodes are cleanly mapped in the DOM today, tomorrow's JavaScript sprint can focus entirely on asynchronous infinite track scrolling and responsive user lane-shifting!


🎯 Target Milestones for Tomorrow (Day 108)

Stepping into the logical execution of our top-down runner engine:

  • Writing the event interception handlers to move the runner horizontally across lanes.
  • Injecting dynamic vertical translations via CSS variables to scroll the hurdles and create an infinite moving perspective!

💬 Let's Connect!

To all game designers and frontend engineers: When handling top-down obstacle scrolling, do you prefer rendering dynamic elements using arrays inside a single container or updating dedicated DOM nodes independently? Let's discuss optimization below!

My active solution tracking vault is live on GitHub!
[Links in the Comments]

Day 107 locked down. The track is set, the player is ready. Let's build the motion loops tomorrow! 🚀

Top comments (0)