DEV Community

Ali Hamza
Ali Hamza

Posted on

Day 96 of Learning MERN Stack

Hello Dev Community! 👋

It is officially Day 96 of my 100-day full-stack engineering run! 🎯 We are just 4 days away from crossing the finish line. Continuing my structural sprint through core web fundamentals, today I tackled a fantastic logical utility: Building a dynamic Random Password Generator completely with Pure HTML, CSS, and Vanilla JavaScript! 🔐💻

Many developers skip these mini-utilities, but engineering a fully secure, condition-based text shuffler requires crisp knowledge of conditional string array indexing, type conversions, and checking state arrays natively.


🧠 Breaking Down the Day 96 Algorithmic Flow

As showcased in my local workspace execution inside "Screenshot (215).png", I built a responsive component interface that processes user-defined complexity sets instantly:

1. Condition-Based Character Pooling

  • Instead of picking completely static characters, I configured dynamic arrays that map character sets depending on active UI checkbox configurations:
    • Upper Case Set (A-Z)
    • Lower Case Set (a-z)
    • Numerical Matrices (0-9)
    • Cryptographic Special Tokens (!@#$%^&*...)
  • Wrote dynamic event evaluation logic to dynamically push active character pools into a master generator string depending on whether .checked parameters evaluate to true.

2. Random Index Shuffling Math

  • Implemented native pseudo-random string extraction loops leveraging Math.floor(Math.random() * pool.length) bound directly by the user's customized numerical input box length selector.

💡 The Technical Win: Raw Engine Performance over Packages

Instead of bloat-loading an external npm shuffling package or third-party crypto-string module, running this utility over native browser execution matrices yields immediate results. This setup tests element node attributes, handles numbers parsing smoothly, and guarantees that character distributions perfectly mirror the toggled constraints!


🎯 Target Milestones for Tomorrow (Day 97)

The final 4-day countdown is moving fast! Tomorrow, we advance our fundamentals pipeline:

  • Building interactive asynchronous UI tools leveraging native Fetch API workflows.
  • Integrating real-time state feedback mechanics to keep responsive inputs completely intuitive.

💬 Let's Connect!

To my fellow full-stack and frontend engineers: When handling client-side generation engines or state checks, do you prefer mapping character sets through key-code loops or conditional array merges? Let's talk optimization steps down below!

The entire open-source fundamental tracking catalog updates daily on GitHub!
[Links in the Comments]

96 days of unbroken grinding. Clean engineering at every level! 🚀

Top comments (0)