import { NeynarAPIClient,Configuration } from "@neynar/nodejs-sdk";
// make sure to set your NEYNAR_API_KEY .env
// don't have an API key yet? get one at neynar.com
const config = new Configuration({
apiKey: process.env.NEYNAR_API_KEY,
});
const client = new NeynarAPIClient(config);
import { useState, useEffect } from "react";
const App = () => {
const [searchTerm, setSearchTerm] = useState("");
const [users, setUsers] = useState([]);
useEffect(() => {
const q = searchTerm;
const limit = 10;
const fetchUsers = async () => {
try {
const data = await client.searchUser({q, limit});
setUsers(data.result.users);
} catch (error) {
console.error("Error fetching users:", error);
}
};
if (searchTerm.length > 0) {
// to prevent searching with an empty string
fetchUsers();
}
}, [searchTerm]); // This will trigger the useEffect when searchTerm changes
return (
<div>
<input
type="text"
placeholder="Search for users..."
value={searchTerm}
onChange={(e) => setSearchTerm(e.target.value)}
/>
<ul>
{users.map((user) => (
<li key={user.fid}>
{user.username} - {user.display_name}
</li>
))}
</ul>
</div>
);
};
export default App;