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.