Case 1 : Find my Fan
guide on how to create the desired frame using Lum0x.
"I want to know the reaction rankings of the FIDs that have interacted with my most recent 100 casts. Who's been reacting to my posts the most?"
Step 1 : To determine the reaction rankings, we'll first need to identify the necessary data.
Retrieves and processes Casts for a specific user, calculates scores, and returns a sorted list of users. Lum0x.farcasterCast.getCastsByFid
async function searchMyFan(fid) { let res = await Lum0x.farcasterCast.getCastsByFid({ fid: fid, limit: 100 }); let casts = res.result.casts; for (let cast of casts) { processReaction(cast); } const sortedFids = getSortedScores(); sortedFids.splice(25); let fids = ''; for (let info of sortedFids) { fids += info.fid + ','; } fids = fids.slice(0, -1); let displayNames = await getDisplayName(fids); for (let i = 0; i < sortedFids.length; i++) { sortedFids[i].display_name = displayNames[i]; } return sortedFids; }
Retrieves the display names of users given their FIDs Lum0x.farcasterUser.getUserByFids
async function getDisplayName(fids) { let res = await Lum0x.farcasterUser.getUserByFids({ fids: fids }); let users = res.users; let displayNames = []; for (let user of users) { displayNames.push(user.display_name); } return displayNames; }
Step 2 : To use Lum0x, you need to get an API key.
1) Go to buildathon.lum0x.com

2) farcaster login

3) Get API key

Step 3 : Write business logic
1) Install Lum0x SDK
npm install lum0x-sdk
2) code
Step 4 (Optional) : Frame generator on https://buildathon.lum0x.com/
When data is entered, a table-like frame is automatically generated.

1) Adjust the data format as follows
The supported data formats are as follows.
CSV(Comma-Separated Values)
[
[userId,gender,phone],
[aglj34g34g ,male ,01 ],
[rnklbhn94 ,female ,02 ],
[br9yn3 ,male ,000034034 ]
]
The first row serves as a header, representing the name of each column (userId, gender, phone). Each subsequent row represents a record (or data entry), containing values corresponding to each column.
JSON (JavaScript Object Notation)
[
{
"fid": "610697",
"score": 10,
"display_name": "Mr.Bublegum"
},
{
"fid": "648129",
"score": 9,
"display_name": "Tarun Chitra"
},
{
"fid": "613104",
"score": 7,
"display_name": "Coly1986"
},
{
"fid": "7074",
"score": 6,
"display_name": "0x_King"
}
]

Last updated