Full stack web developer
I build fast, production ready web systems
Ecommerce • dashboards • realtime apps
Clean UX. Solid architecture. Fast delivery
DM open
The hardest part of facial attendance isn’t detecting a face.
It’s proving the face is real and physically present.
I built a browser-based liveness system (no ML API, no server verification).
Why this works:
• Photos fail early (no motion)
• Videos can’t predict random step 4
• Requires real-time response, not replay
Built with face-api.js + pure JS geometry.
Detecting a face is easy. Proving presence isn’t.
The hardest part of facial attendance isn’t detecting a face.
It’s proving the face is real and physically present.
I built a browser-based liveness system (no ML API, no server verification).
Yaw ratio: yaw = leftEye_to_nose / (leftEye_to_nose + nose_to_rightEye)
MAR (mouth): MAR = vertical_mouth / horizontal_mouth
EAR (eyes): Used to detect blink via sudden drop across frames
4-step challenge flow:
1. Look straight
2. Turn left
3. Turn right
4. Random challenge: • Open mouth OR
• Blink eyes
Each step must be held across multiple frames.
Today’s win: real time browser auth flow.
After face scan + liveness check + descriptor match
🟢 Camera stream freezes
🛡️ Green fills the viewfinder
✅ "Identity Verified!" appears
🔓 Submit button unlocks
Felt too clean. Had to say “let’s go” 😭
#javascript#ux#buildinpublic
Runs entirely in the browser.
Face AI runs locally in WebAssembly (face-api.js).
No photos uploaded. No native app yet.
PHP · MySQL · Tailwind · vanilla JS.
#buildinpublic#webdev
Every Nigerian university student knows this scene.
The lecturer passes around an attendance sheet.
You sign your name.
Your friend signs for you when you're late or absent.
Everyone has 100% attendance. Barely anyone showed up.
4. All four. At the same time. No shortcuts.
It's a full-stack web app, PHP, MySQL, Tailwind CSS, vanilla JS.
It runs in the browser. No app store. No install friction.
This is my answer to a problem I've watched go unsolved for years.
Every Nigerian university student knows this scene.
The lecturer passes around an attendance sheet.
You sign your name.
Your friend signs for you when you're late or absent.
Everyone has 100% attendance. Barely anyone showed up.
3. To mark yourself present, you must:
→ Be physically holding the phone (liveness detection)
→ Be at the correct location (GPS verified)
→ Know the session code (only shared live in class)
→ Match the face you enrolled with from day one
2. That's proxy attendance. It's been the norm for decades.
It's unfair to students who actually come. And it makes the record completely meaningless.
So I built a system that makes it physically impossible.