Ich hab ja vor ein paar Wochen schon was dazu gesagt, aber wollte nochmal kurz einen anderen Aspekt beleuchten 🤔, hoffe es stört nicht 😇 . Ich war ja lange ein Gegner, aber jetzt sehe ich AI dann doch wirklich als sehr nützliches Tool 😋
Wie man sieht, hat das sehr gut funktioniert 😜.
Ich meine, früher hätte ich halt lange nach irgendeiner online Tabelle gesucht 😔. Also, ich hätte schnell eine gefunden, aber an der hätte mich irgendetwas gestört, also hätte ich noch 12 weitere Seiten anschauen müssen 😪. Jetzt ist der Paradigmenwechsel, "Software" nicht mehr zu suchen, sondern einfach schnell selbst zu schreiben 😎.
Aber so wirklich funktionieren tut das aus meiner Sicht aus dem folgenden Grund: Ich weiß, dass Emojis im UTF8 sind, ich weiß, dass ich die einfach als Zeichen einfügen kann und das funktioniert in jedem aktuellen Browser oder Texteditor. Und ich weiß, dass man das Problem sehr gut als einzelne HTML Seite mit ein wenig JS umsetzen kann. 🤓 Sprich, das Problem ist nicht mehr, Probleme zu lösen (das macht die KI), sondern zu wissen, welche Probleme man lösen sollte. Oder irgendwie so.
Ich hätte mir genau diese Webseite immer schon von Hand basteln können. Das hätte aber irgendwie ne Stunde gedauert und ich hätte sowas nie gemacht. Sprich, ich kann heute nicht die selben Dinge schneller erledigen, sondern ich kann Dinge tun, die ich früher nie getan hätte.
Anyways, ich fands immer doof, dass es hier im Forum keine vernünftige Funktion gibt, Emojis einzufügen. Welp, wie man sieht, habe ich das Problem jetzt nicht mehr 😈
Achja, im Anhang noch die html-Datei, falls es wer ausprobieren möchte. Es hat noch 2 weitere Prompts gebraucht um sie etwas zu verbessern.
Code: Alles auswählen
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Emoji Reference</title>
<style>
* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: system-ui, -apple-system, sans-serif; background: #f5f5f5; color: #222; padding: 1.25rem; }
h1 { font-size: 1.3rem; font-weight: 600; margin-bottom: 0.25rem; }
.subtitle { color: #777; font-size: 0.82rem; margin-bottom: 1rem; }
.search-bar { margin-bottom: 1.25rem; }
.search-bar input {
width: 100%; max-width: 420px; padding: 0.45rem 0.85rem;
border: 1px solid #ccc; border-radius: 7px; font-size: 0.95rem;
background: #fff; color: #222;
}
.search-bar input:focus { outline: none; border-color: #888; }
.category { margin-bottom: 1.5rem; }
.category-title {
font-size: 0.7rem; font-weight: 700; color: #999;
border-bottom: 1px solid #ddd; padding-bottom: 0.3rem;
margin-bottom: 0.5rem; text-transform: uppercase; letter-spacing: 0.07em;
}
.emoji-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
gap: 3px;
}
.emoji-item {
display: flex; align-items: center; gap: 6px;
padding: 4px 7px; border-radius: 6px;
cursor: pointer; user-select: none;
border: 1px solid transparent;
transition: background 0.1s, border-color 0.1s;
background: #fff;
position: relative;
min-width: 0;
}
.emoji-item:hover { background: #f0f0f0; border-color: #ddd; }
.emoji-item.copied { background: #e6f4ea; border-color: #81c784; }
.emoji-glyph { font-size: 1.3rem; flex-shrink: 0; line-height: 1; }
.emoji-name {
font-size: 0.72rem; color: #444; white-space: nowrap;
overflow: hidden; text-overflow: ellipsis;
min-width: 0;
}
.emoji-item::after {
content: attr(data-tip);
position: absolute;
bottom: calc(100% + 5px); left: 50%; transform: translateX(-50%);
background: #222; color: #fff;
font-size: 0.68rem; font-family: 'Menlo', 'Courier New', monospace;
padding: 3px 7px; border-radius: 4px; white-space: nowrap;
pointer-events: none; opacity: 0; transition: opacity 0.15s;
z-index: 10;
}
.emoji-item:hover::after { opacity: 1; }
.item-hidden { display: none !important; }
@media (prefers-color-scheme: dark) {
body { background: #1a1a1a; color: #eee; }
.subtitle { color: #888; }
.search-bar input { background: #2a2a2a; border-color: #444; color: #eee; }
.category-title { color: #666; border-color: #333; }
.emoji-item { background: #242424; }
.emoji-item:hover { background: #2e2e2e; border-color: #444; }
.emoji-item.copied { background: #1b3a22; border-color: #4caf50; }
.emoji-name { color: #bbb; }
.emoji-item::after { background: #eee; color: #111; }
}
</style>
</head>
<body>
<h1>Emoji Reference</h1>
<p class="subtitle">Click an emoji to copy it · hover for codepoint</p>
<div class="search-bar">
<input type="text" id="search" placeholder="Search by name or codepoint…" oninput="filterEmojis(this.value)">
</div>
<div id="categories"></div>
<script>
const EMOJIS = {
"Smileys & Emotion": [
["😀","1F600","grinning face"],["😃","1F603","grinning big eyes"],["😄","1F604","grinning smiling eyes"],
["😁","1F601","beaming face"],["😆","1F606","grinning squinting"],["😅","1F605","grinning with sweat"],
["🤣","1F923","rolling laughing"],["😂","1F602","tears of joy"],["🙂","1F642","slightly smiling"],
["🙃","1F643","upside-down face"],["😉","1F609","winking face"],["😊","1F60A","smiling eyes"],
["😇","1F607","smiling halo"],["😍","1F60D","heart eyes"],["🤩","1F929","star-struck"],
["😘","1F618","face blowing kiss"],["😗","1F617","kissing face"],["😚","1F61A","kissing closed eyes"],
["😋","1F60B","savoring food"],["😛","1F61B","face with tongue"],["😜","1F61C","winking tongue"],
["🤪","1F92A","zany face"],["😝","1F61D","squinting tongue"],["🤑","1F911","money mouth"],
["🤗","1F917","hugging face"],["🤭","1F92D","hand over mouth"],["🤫","1F92B","shushing face"],
["🤔","1F914","thinking face"],["🤐","1F910","zipper mouth"],["🤨","1F928","raised eyebrow"],
["😐","1F610","neutral face"],["😑","1F611","expressionless"],["😶","1F636","no mouth"],
["😏","1F60F","smirking face"],["😒","1F612","unamused face"],["🙄","1F644","rolling eyes"],
["😬","1F62C","grimacing face"],["🤥","1F925","lying face"],["😌","1F60C","relieved face"],
["😔","1F614","pensive face"],["😪","1F62A","sleepy face"],["🤤","1F924","drooling face"],
["😴","1F634","sleeping face"],["😷","1F637","medical mask"],["🤒","1F912","thermometer face"],
["🤕","1F915","head bandage"],["🤢","1F922","nauseated face"],["🤮","1F92E","vomiting face"],
["🤧","1F927","sneezing face"],["🥵","1F975","hot face"],["🥶","1F976","cold face"],
["😵","1F635","dizzy face"],["🤯","1F92F","exploding head"],["🥳","1F973","partying face"],
["😎","1F60E","sunglasses face"],["🥸","1F978","disguised face"],["🤓","1F913","nerd face"],
["😈","1F608","smiling devil"],["👿","1F47F","angry devil"],["💀","1F480","skull"],
["☠️","2620","skull crossbones"],["👻","1F47B","ghost"],["👾","1F47E","alien monster"],
["🤖","1F916","robot"],["😡","1F621","enraged face"],["😠","1F620","angry face"],
["🥺","1F97A","pleading face"],["😢","1F622","crying face"],["😭","1F62D","loudly crying"],
["😤","1F624","steam from nose"],["😱","1F631","screaming fear"],["😨","1F628","fearful face"],
["😰","1F630","anxious sweat"],["😥","1F625","sad relieved"],["😓","1F613","downcast sweat"],
["❤️","2764","red heart"],["🧡","1F9E1","orange heart"],["💛","1F49B","yellow heart"],
["💚","1F49A","green heart"],["💙","1F499","blue heart"],["💜","1F49C","purple heart"],
["🖤","1F5A4","black heart"],["🤍","1F90D","white heart"],["🤎","1F90E","brown heart"],
["💔","1F494","broken heart"],["💕","1F495","two hearts"],["💞","1F49E","revolving hearts"],
["💓","1F493","beating heart"],["💗","1F497","growing heart"],["💖","1F496","sparkling heart"],
["💘","1F498","heart arrow"],["💝","1F49D","heart ribbon"],["❣️","2763","heart exclamation"],
],
"People & Body": [
["👋","1F44B","waving hand"],["🤚","1F91A","raised back hand"],["🖐️","1F590","fingers splayed"],
["✋","270B","raised hand"],["🖖","1F596","vulcan salute"],["👌","1F44C","ok hand"],
["🤌","1F90C","pinched fingers"],["✌️","270C","victory hand"],["🤞","1F91E","crossed fingers"],
["🤟","1F91F","love-you gesture"],["🤘","1F918","sign of horns"],["🤙","1F919","call me hand"],
["👈","1F448","pointing left"],["👉","1F449","pointing right"],["👆","1F446","pointing up"],
["🖕","1F595","middle finger"],["👇","1F447","pointing down"],["☝️","261D","index up"],
["👍","1F44D","thumbs up"],["👎","1F44E","thumbs down"],["✊","270A","raised fist"],
["👊","1F44A","oncoming fist"],["🤛","1F91B","left fist"],["🤜","1F91C","right fist"],
["👏","1F44F","clapping hands"],["🙌","1F64C","raising hands"],["👐","1F450","open hands"],
["🤲","1F932","palms up"],["🤝","1F91D","handshake"],["🙏","1F64F","folded hands"],
["✍️","270D","writing hand"],["💅","1F485","nail polish"],["💪","1F4AA","flexed biceps"],
["🦾","1F9BE","mechanical arm"],["👀","1F440","eyes"],["👁️","1F441","eye"],
["👅","1F445","tongue"],["👄","1F444","mouth"],["💋","1F48B","kiss mark"],
["👶","1F476","baby"],["🧒","1F9D2","child"],["👧","1F467","girl"],
["👦","1F466","boy"],["🧑","1F9D1","person"],["👩","1F469","woman"],
["👨","1F468","man"],["🧓","1F9D3","older person"],["👴","1F474","old man"],
["👵","1F475","old woman"],["🧔","1F9D4","bearded person"],["👱","1F471","blond person"],
["👮","1F46E","police officer"],["💂","1F482","guard"],["🕵️","1F575","detective"],
["👷","1F477","construction worker"],["🤴","1F934","prince"],["👸","1F478","princess"],
["🦸","1F9B8","superhero"],["🦹","1F9B9","supervillain"],["🧙","1F9D9","mage"],
["🧚","1F9DA","fairy"],["🧜","1F9DC","merperson"],["🧝","1F9DD","elf"],
["💆","1F486","getting massage"],["💇","1F487","getting haircut"],["🚶","1F6B6","walking"],
["🏃","1F3C3","running"],["💃","1F483","woman dancing"],["🕺","1F57A","man dancing"],
["🧘","1F9D8","lotus position"],["🧗","1F9D7","climbing"],["🤸","1F938","cartwheeling"],
["👫","1F46B","couple holding hands"],["👬","1F46C","men holding hands"],["👭","1F46D","women holding hands"],
["👨👩👧","1F468-200D-1F469-200D-1F467","family"],["👨👩👦","1F468-200D-1F469-200D-1F466","family boy"],
],
"Animals & Nature": [
["🐶","1F436","dog face"],["🐱","1F431","cat face"],["🐭","1F42D","mouse face"],
["🐹","1F439","hamster"],["🐰","1F430","rabbit face"],["🦊","1F98A","fox"],
["🐻","1F43B","bear"],["🐼","1F43C","panda"],["🐨","1F428","koala"],
["🐯","1F42F","tiger face"],["🦁","1F981","lion"],["🐮","1F42E","cow face"],
["🐷","1F437","pig face"],["🐸","1F438","frog"],["🐵","1F435","monkey face"],
["🙈","1F648","see-no-evil monkey"],["🙉","1F649","hear-no-evil monkey"],["🙊","1F64A","speak-no-evil monkey"],
["🐔","1F414","chicken"],["🐧","1F427","penguin"],["🐦","1F426","bird"],
["🦆","1F986","duck"],["🦅","1F985","eagle"],["🦉","1F989","owl"],
["🦇","1F987","bat"],["🐺","1F43A","wolf"],["🦄","1F984","unicorn"],
["🐝","1F41D","honeybee"],["🦋","1F98B","butterfly"],["🐛","1F41B","bug"],
["🐌","1F40C","snail"],["🐞","1F41E","ladybug"],["🐜","1F41C","ant"],
["🦟","1F99F","mosquito"],["🕷️","1F577","spider"],["🐢","1F422","turtle"],
["🐍","1F40D","snake"],["🦎","1F98E","lizard"],["🐊","1F40A","crocodile"],
["🦕","1F995","sauropod"],["🦖","1F996","T-Rex"],["🐉","1F409","dragon"],
["🐳","1F433","spouting whale"],["🐬","1F42C","dolphin"],["🦭","1F9AD","seal"],
["🐟","1F41F","fish"],["🐠","1F420","tropical fish"],["🦈","1F988","shark"],
["🐙","1F419","octopus"],["🦀","1F980","crab"],["🦞","1F99E","lobster"],
["🦐","1F990","shrimp"],["🐾","1F43E","paw prints"],["🌸","1F338","cherry blossom"],
["🌺","1F33A","hibiscus"],["🌻","1F33B","sunflower"],["🌹","1F339","rose"],
["🌷","1F337","tulip"],["🌼","1F33C","blossom"],["💐","1F490","bouquet"],
["🍀","1F340","four leaf clover"],["🌿","1F33F","herb"],["🌱","1F331","seedling"],
["🌲","1F332","evergreen tree"],["🌳","1F333","deciduous tree"],["🌴","1F334","palm tree"],
["🍁","1F341","maple leaf"],["🍂","1F342","fallen leaf"],["🍃","1F343","leaf fluttering"],
["🍄","1F344","mushroom"],["🌵","1F335","cactus"],["🌾","1F33E","sheaf of rice"],
["🌊","1F30A","water wave"],["🌋","1F30B","volcano"],["🏔️","1F3D4","snow mountain"],
["🌍","1F30D","globe europe"],["🌎","1F30E","globe americas"],["🌏","1F30F","globe asia"],
["🌙","1F319","crescent moon"],["🌕","1F315","full moon"],["⭐","2B50","star"],
["🌟","1F31F","glowing star"],["☀️","2600","sun"],["🌈","1F308","rainbow"],
["❄️","2744","snowflake"],["🌪️","1F32A","tornado"],["💧","1F4A7","droplet"],["🔥","1F525","fire"],
],
"Food & Drink": [
["🍎","1F34E","red apple"],["🍊","1F34A","tangerine"],["🍋","1F34B","lemon"],
["🍌","1F34C","banana"],["🍉","1F349","watermelon"],["🍇","1F347","grapes"],
["🍓","1F353","strawberry"],["🍒","1F352","cherries"],["🍑","1F351","peach"],
["🥭","1F96D","mango"],["🍍","1F34D","pineapple"],["🥥","1F965","coconut"],
["🥝","1F95D","kiwi"],["🍅","1F345","tomato"],["🫐","1FAD0","blueberries"],
["🍆","1F346","eggplant"],["🥑","1F951","avocado"],["🥦","1F966","broccoli"],
["🌽","1F33D","corn"],["🌶️","1F336","hot pepper"],["🥒","1F952","cucumber"],
["🧅","1F9C5","onion"],["🧄","1F9C4","garlic"],["🥔","1F954","potato"],
["🍞","1F35E","bread"],["🥐","1F950","croissant"],["🧀","1F9C0","cheese"],
["🥚","1F95A","egg"],["🍳","1F373","cooking"],["🥞","1F95E","pancakes"],
["🧇","1F9C7","waffle"],["🥓","1F953","bacon"],["🍔","1F354","hamburger"],
["🍟","1F35F","french fries"],["🍕","1F355","pizza"],["🌭","1F32D","hot dog"],
["🌮","1F32E","taco"],["🌯","1F32F","burrito"],["🥗","1F957","salad"],
["🍜","1F35C","noodles"],["🍝","1F35D","spaghetti"],["🍲","1F372","pot of food"],
["🍛","1F35B","curry"],["🍣","1F363","sushi"],["🍱","1F371","bento box"],
["🍤","1F364","fried shrimp"],["🦪","1F9AA","oyster"],["🍦","1F366","soft ice cream"],
["🍧","1F367","shaved ice"],["🍨","1F368","ice cream"],["🍩","1F369","doughnut"],
["🍪","1F36A","cookie"],["🎂","1F382","birthday cake"],["🍰","1F370","shortcake"],
["🧁","1F9C1","cupcake"],["🍫","1F36B","chocolate bar"],["🍬","1F36C","candy"],
["🍭","1F36D","lollipop"],["🍿","1F37F","popcorn"],["🍯","1F36F","honey pot"],
["☕","2615","hot beverage"],["🍵","1F375","teacup"],["🧋","1F9CB","bubble tea"],
["🥤","1F964","cup with straw"],["🍺","1F37A","beer mug"],["🍻","1F37B","clinking beers"],
["🥂","1F942","clinking glasses"],["🍷","1F377","wine glass"],["🥃","1F943","tumbler glass"],
["🍸","1F378","cocktail glass"],["🍹","1F379","tropical drink"],["🍾","1F37E","champagne"],
],
"Travel & Places": [
["🚀","1F680","rocket"],["✈️","2708","airplane"],["🚁","1F681","helicopter"],
["🚂","1F682","locomotive"],["🚆","1F686","train"],["🚇","1F687","metro"],
["🚗","1F697","automobile"],["🚕","1F695","taxi"],["🚙","1F699","SUV"],
["🚌","1F68C","bus"],["🏎️","1F3CE","racing car"],["🚓","1F693","police car"],
["🚑","1F691","ambulance"],["🚒","1F692","fire engine"],["🚚","1F69A","truck"],
["🛵","1F6F5","scooter"],["🏍️","1F3CD","motorcycle"],["🚲","1F6B2","bicycle"],
["⛵","26F5","sailboat"],["🚤","1F6A4","speedboat"],["🚢","1F6A2","ship"],
["🏖️","1F3D6","beach"],["🏕️","1F3D5","camping"],["🏠","1F3E0","house"],
["🏡","1F3E1","house garden"],["🏢","1F3E2","office building"],["🏥","1F3E5","hospital"],
["🏦","1F3E6","bank"],["🏨","1F3E8","hotel"],["🏪","1F3EA","convenience store"],
["🏫","1F3EB","school"],["🏬","1F3EC","department store"],["🏭","1F3ED","factory"],
["🗼","1F5FC","Tokyo tower"],["🗽","1F5FD","Statue of Liberty"],["⛪","26EA","church"],
["🕌","1F54C","mosque"],["🛕","1F6D5","hindu temple"],["🕍","1F54D","synagogue"],
["🏔️","1F3D4","snow mountain"],["🌋","1F30B","volcano"],["🗻","1F5FB","mount fuji"],
["🏜️","1F3DC","desert"],["🏝️","1F3DD","island"],["🏞️","1F3DE","national park"],
["🌅","1F305","sunrise"],["🌃","1F303","night with stars"],["🏙️","1F3D9","cityscape"],
["🌉","1F309","bridge at night"],["🗺️","1F5FA","world map"],["🧭","1F9ED","compass"],
["🌐","1F310","globe meridians"],["⛽","26FD","fuel pump"],["🚦","1F6A6","traffic light"],["🚧","1F6A7","construction"],
],
"Objects & Tools": [
["📱","1F4F1","mobile phone"],["💻","1F4BB","laptop"],["🖥️","1F5A5","desktop computer"],
["⌨️","2328","keyboard"],["🖱️","1F5B1","mouse"],["⌚","231A","watch"],
["📷","1F4F7","camera"],["📸","1F4F8","camera flash"],["📹","1F4F9","video camera"],
["📺","1F4FA","television"],["📻","1F4FB","radio"],["☎️","260E","telephone"],
["📞","1F4DE","telephone receiver"],["🔋","1F50B","battery"],["🔌","1F50C","plug"],
["💡","1F4A1","light bulb"],["🔦","1F526","flashlight"],["🕯️","1F56F","candle"],
["🔎","1F50E","magnifying glass"],["📚","1F4DA","books"],["📖","1F4D6","open book"],
["📰","1F4F0","newspaper"],["📝","1F4DD","memo"],["✏️","270F","pencil"],
["🖊️","1F58A","pen"],["🖋️","1F58B","fountain pen"],["🖌️","1F58C","paintbrush"],
["📊","1F4CA","bar chart"],["📈","1F4C8","chart up"],["📉","1F4C9","chart down"],
["📋","1F4CB","clipboard"],["📁","1F4C1","folder"],["📅","1F4C5","calendar"],
["🗑️","1F5D1","wastebasket"],["🔒","1F512","locked"],["🔓","1F513","unlocked"],
["🔑","1F511","key"],["🗝️","1F5DD","old key"],["🔨","1F528","hammer"],
["🛠️","1F6E0","tools"],["🔧","1F527","wrench"],["🔩","1F529","nut bolt"],
["⚙️","2699","gear"],["🔗","1F517","link"],["🪝","1FA9D","hook"],
["💉","1F489","syringe"],["💊","1F48A","pill"],["🩹","1FA79","bandage"],
["🩺","1FA7A","stethoscope"],["🧬","1F9EC","dna"],["🔬","1F52C","microscope"],
["🔭","1F52D","telescope"],["🧪","1F9EA","test tube"],["🧲","1F9F2","magnet"],
["🎉","1F389","party popper"],["🎈","1F388","balloon"],["🎁","1F381","gift"],
["🏆","1F3C6","trophy"],["🥇","1F947","gold medal"],["🎮","1F3AE","video game"],
["🎲","1F3B2","game die"],["🧩","1F9E9","puzzle"],["🎯","1F3AF","bullseye"],
["🛍️","1F6CD","shopping bags"],["🎒","1F392","backpack"],["👑","1F451","crown"],
["💍","1F48D","ring"],["💎","1F48E","gem"],["👓","1F453","glasses"],
["🕶️","1F576","sunglasses"],["🪄","1FA84","magic wand"],["🧸","1F9F8","teddy bear"],
["🎨","1F3A8","artist palette"],["🎬","1F3AC","clapper board"],["🎤","1F3A4","microphone"],
["🎧","1F3A7","headphones"],["🎹","1F3B9","piano"],["🥁","1F941","drum"],
["🎷","1F3B7","saxophone"],["🎺","1F3BA","trumpet"],["🎸","1F3B8","guitar"],["🎻","1F3BB","violin"],
["✨","2728","sparkles"],["💫","1F4AB","dizzy"],["💥","1F4A5","collision"],
["💬","1F4AC","speech bubble"],["💭","1F4AD","thought bubble"],["🔔","1F514","bell"],
["📢","1F4E2","loudspeaker"],["📣","1F4E3","megaphone"],["🔥","1F525","fire"],["💤","1F4A4","zzz"],
],
"Symbols & Signs": [
["✅","2705","check mark"],["❌","274C","cross mark"],["⭕","2B55","hollow circle"],
["❓","2753","question mark"],["❗","2757","exclamation mark"],["‼️","203C","double exclamation"],
["💯","1F4AF","hundred points"],["🚫","1F6AB","prohibited"],["⛔","26D4","no entry"],
["🔞","1F51E","no under eighteen"],["🔴","1F534","red circle"],["🟠","1F7E0","orange circle"],
["🟡","1F7E1","yellow circle"],["🟢","1F7E2","green circle"],["🔵","1F535","blue circle"],
["🟣","1F7E3","purple circle"],["⚫","26AB","black circle"],["⚪","26AA","white circle"],
["🔶","1F536","orange diamond"],["🔷","1F537","blue diamond"],["🔺","1F53A","triangle up"],["🔻","1F53B","triangle down"],
["♻️","267B","recycling"],["⬆️","2B06","up arrow"],["➡️","27A1","right arrow"],
["⬇️","2B07","down arrow"],["⬅️","2B05","left arrow"],["↗️","2197","up-right arrow"],
["↘️","2198","down-right arrow"],["↩️","21A9","return arrow"],["↪️","21AA","left curve arrow"],
["🔁","1F501","repeat"],["🔀","1F500","shuffle"],["▶️","25B6","play"],
["⏸️","23F8","pause"],["⏹️","23F9","stop"],["⏭️","23ED","next track"],
["⏩","23E9","fast forward"],["⏪","23EA","fast reverse"],
["🎵","1F3B5","musical note"],["🎶","1F3B6","musical notes"],
["🆕","1F195","NEW"],["🆒","1F192","COOL"],["🆓","1F193","FREE"],["🆗","1F197","OK"],
["🔆","1F506","brightness high"],["🔅","1F505","brightness low"],["🔊","1F50A","speaker high"],["🔇","1F507","muted"],
["💲","1F4B2","dollar sign"],["©️","00A9","copyright"],["®️","00AE","registered"],["™️","2122","trade mark"],
["☯️","262F","yin yang"],["☮️","262E","peace"],["✡️","2721","Star of David"],
["🔱","1F531","trident"],["🔰","1F530","Japanese beginner"],["⚜️","269C","fleur-de-lis"],
["1️⃣","0031-FE0F-20E3","keycap 1"],["2️⃣","0032-FE0F-20E3","keycap 2"],["3️⃣","0033-FE0F-20E3","keycap 3"],
["4️⃣","0034-FE0F-20E3","keycap 4"],["5️⃣","0035-FE0F-20E3","keycap 5"],["0️⃣","0030-FE0F-20E3","keycap 0"],
["#️⃣","0023-FE0F-20E3","keycap hash"],["*️⃣","002A-FE0F-20E3","keycap asterisk"],
["♈","2648","Aries"],["♉","2649","Taurus"],["♊","264A","Gemini"],["♋","264B","Cancer"],
["♌","264C","Leo"],["♍","264D","Virgo"],["♎","264E","Libra"],["♏","264F","Scorpio"],
["♐","2650","Sagittarius"],["♑","2651","Capricorn"],["♒","2652","Aquarius"],["♓","2653","Pisces"],
],
"Activities & Sports": [
["⚽","26BD","soccer ball"],["🏀","1F3C0","basketball"],["🏈","1F3C8","american football"],
["⚾","26BE","baseball"],["🎾","1F3BE","tennis"],["🏐","1F3D0","volleyball"],
["🏉","1F3C9","rugby"],["🎱","1F3B1","pool 8 ball"],["🏓","1F3D3","ping pong"],
["🏸","1F3F8","badminton"],["🥊","1F94A","boxing glove"],["🥋","1F94B","martial arts"],
["⛳","26F3","golf"],["🎣","1F3A3","fishing"],["🤿","1F93F","diving mask"],
["🎿","1F3BF","skis"],["🛷","1F6F7","sled"],["🎯","1F3AF","bullseye"],
["🎳","1F3B3","bowling"],["🥇","1F947","gold medal"],["🥈","1F948","silver medal"],
["🥉","1F949","bronze medal"],["🏆","1F3C6","trophy"],["🏋️","1F3CB","weightlifting"],
["🤸","1F938","cartwheeling"],["🤺","1F93A","fencing"],["🏊","1F3CA","swimming"],
["🚴","1F6B4","biking"],["🧗","1F9D7","climbing"],["🏄","1F3C4","surfing"],
["🧘","1F9D8","yoga"],["🏇","1F3C7","horse racing"],["🎽","1F3BD","running shirt"],
["🎭","1F3AD","performing arts"],["🎨","1F3A8","artist palette"],["🎬","1F3AC","clapper board"],
["🎤","1F3A4","microphone"],["🎧","1F3A7","headphones"],["🎹","1F3B9","piano"],
["🥁","1F941","drum"],["🎷","1F3B7","saxophone"],["🎺","1F3BA","trumpet"],
["🎸","1F3B8","guitar"],["🎻","1F3BB","violin"],["🪗","1FA97","accordion"],
["🎲","1F3B2","game die"],["🧩","1F9E9","puzzle"],["♟️","265F","chess pawn"],
["🎮","1F3AE","video game"],["🎰","1F3B0","slot machine"],["🃏","1F0CF","joker card"],
],
};
function buildCategory(category, emojis) {
const items = emojis.map(([emoji, cp, name]) => {
const tip = `U+${cp}`;
return `<div class="emoji-item" data-name="${name}" data-cp="${cp.toLowerCase()}" data-tip="${tip}" data-emoji="${emoji}">` +
`<span class="emoji-glyph">${emoji}</span><span class="emoji-name">${name}</span></div>`;
}).join('');
return `<div class="category"><div class="category-title">${category}</div><div class="emoji-grid">${items}</div></div>`;
}
document.getElementById('categories').innerHTML =
Object.entries(EMOJIS).map(([cat, emojis]) => buildCategory(cat, emojis)).join('');
document.getElementById('categories').addEventListener('click', function(e) {
const item = e.target.closest('.emoji-item');
if (!item) return;
const emoji = item.dataset.emoji;
navigator.clipboard.writeText(emoji).then(() => {
item.classList.add('copied');
setTimeout(() => item.classList.remove('copied'), 900);
});
});
function filterEmojis(query) {
const q = query.trim().toLowerCase();
document.querySelectorAll('.emoji-item').forEach(el => {
const match = !q || el.dataset.name.includes(q) || el.dataset.cp.includes(q);
el.classList.toggle('item-hidden', !match);
});
document.querySelectorAll('.category').forEach(cat => {
const visible = cat.querySelectorAll('.emoji-item:not(.item-hidden)').length > 0;
cat.style.display = visible ? '' : 'none';
});
}
</script>
</body>
</html>