useEffect(() => checkAvailability(username); , [username]);
POST /api/check-username "username": "john_doe"
if (existing.rows.length > 0) return res.json( available: false, reason: 'Username already taken.' );
// 3. Check availability const existing = await db.query( 'SELECT 1 FROM kamalogam_users WHERE LOWER(username) = $1', [username.toLowerCase()] );
"available": false, "reason": "Username already taken.", "suggestions": ["john_doe_123", "john_doe_art", "johndoe_"]
const checkAvailability = debounce(async (value) => if (!value , 500);