PS
← Back to work

Case study · AI / ML · May 2024

BuildYourPassword

Flask password-strength app combining rule scoring, breach detection, and four scikit-learn classifiers with exported joblib models.

Problem

Password strength UX usually stops at simple rules. Recruiters and users benefit from a system that combines heuristics, breach signals, and trained classifiers.

Approach

  • ▸Rule-based scoring for length, complexity, and common patterns
  • ▸Optional breach / exposure checks via external API
  • ▸Train and compare four classic ML classifiers on labeled features
  • ▸Export models with joblib for reproducible inference demos

Decisions

  • ▸Flask for a thin API + UI suitable for ML model serving demos
  • ▸Keep multiple models side-by-side to discuss tradeoffs in interviews
  • ▸Separate notebooks for evaluation from the serving path

Challenges

  • ▸Balancing latency vs model ensemble size for interactive use
  • ▸Hardened secrets handling before any public deploy
  • ▸Serverful Python (gunicorn + sklearn) needs a host beyond Vercel

Results

  • ▸Clear comparison story across four model families
  • ▸End-to-end pipeline from features → train → serve
  • ▸Strong talking points for ML + backend interviews

Tech

PythonFlaskScikit-learnJoblib

Want the walkthrough? Get in touch.