Changelog
What’s new in eeemoji. Every release documented.
v1.1.6
!Fixed
- Removed `src/proxy.ts` (Next.js middleware), a leftover from the previous i18n setup that set an unused `preferred-lang` cookie and marked every route as dynamic, triggering Next 16's "blocking route" warning on blog and other static pages
- Wrapped `<ClockPageClient />` in `<Suspense>` on `/clock` so its `useSearchParams()` call no longer blocks prerendering
- Dropped incompatible `runtime = "edge"` from `/embed/clock.js` route, which was rejected by Next 16's Cache Components
-Removed
- Stale comment in `header.tsx` referencing a `useSearchParams()` call that no longer exists in `EmojiSearch`
v1.1.5
+Added
- Explicit named slugs for keycap collisions: `keycap-hash` and `keycap-asterisk` replace the previous hex-suffixed versions
- Seed script now tries multiple slug variants when fetching from Emojipedia (strips diacritics, strips apostrophes, applies Emojipedia-specific rename map for bullseye, color circles/squares, water pistol, etc.)
*Improved
- Diacritic normalization in slugify: `piñata` is now `pinata`, `flag-t-rkiye` becomes `flag-turkiye`, and similar for Åland, Barthélemy, Côte d'Ivoire, Curaçao, Réunion, São Tomé, and Türkiye flags
- Prev/next navigation on emoji detail pages now crosses category boundaries in front-page grid order, so end-of-section emojis like 🪢 Knot link to ⛵ Sailboat instead of dead-ending
- Seeded 42 previously-missing emoji platform images (1527 → 1569 with full primary platform coverage) by fixing Emojipedia CDN slug mismatches
- Centralized `slugify` in `emoji-data.ts` and exported for use in `guides/emoji-cheat-sheet`, `platform-images`, and seed scripts
!Fixed
- Missing whitespace after inline tags on compare, home, blog, and privacy pages where SWC's JSX transform was stripping leading spaces in multi-line text nodes with HTML entities (38 instances across the app)
- "How it looks" caption text on emoji detail pages now matches the body text size of other sections
- Extra duplicate navigation footer removed from all 9 comparison pages (Home / All Comparisons / Guides / etc. were duplicated from the main site footer)
-Removed
- All references to multi-language support / translated UI / language counts on compare pages, home page, and settings/privacy copy (site no longer has i18n)
- "Languages" row from compare feature matrices
- "Language Support" sections from every competitor comparison page
v1.1.4
+Added
- "Keep reading" section on blog posts showing 3 related posts by tag overlap
- "Emojis mentioned" grid on blog posts linking to emoji detail pages
- "Share this post" CTA on blog posts with URL copy button
- `BlogLink` component for accessible blog inline links (WCAG 1.4.1 visible underline)
*Improved
- Emoji platform images served via Next.js Image optimization (auto AVIF/WebP)
- React Compiler enabled for all components (was annotation-only)
- Lazy-loaded PlatformImages and Recharts to reduce main-thread work
- Browserslist targets modern browsers, dropping ~14 KiB of polyfills
- WCAG AA contrast fixes for pill text, DO/DON'T labels, success color, source citations
- Centralized emoji grids and share section into shared components
!Fixed
- Blog inline links now have always-visible underline for colorblind accessibility
- Copy button labels meet contrast ratio requirements on mobile
v1.1.3
*Improved
- Spring emoji quiz blog post: full schema.org enrichment with Quiz, DefinedTermSet, Dataset, SocialMediaPosting, ItemList, and LearningResource types covering all 7 interactive widgets
- Added Twitter Card and Open Graph image meta tags to the spring emoji quiz
- Longer fallback descriptions for Dataset schema on emoji pages to pass validation
v1.1.2
+Added
- Blog post: "How the Retweet Button Changed the Internet" - the full story of Chris Wetherell's retweet button, from manual RT @ to one-click amplification, the 2020 election experiment, and the death of "retweet" as a word. Google Trends data, 17 sourced references, interactive stat cards.
!Fixed
- Emoji proposal builder no longer crashes the build with `new Date()` during static prerender
v1.1.1
!Fixed
- Gender and skin tone pickers no longer reset each other's selection
- Variant picker buttons use standard rounded corners with proper spacing
- Platform image cards now work on mobile, tap to copy and ... menu for full options
- TikTok emoji cards match the same layout and behavior as platform cards
- Changelog page now renders markdown links and bold text instead of showing raw syntax
~Changed
- Platform image default copy is now the largest available resolution (up to 512px), falling back to 240px
- Copy and download menus show high-res option first for platforms that support it
- Menu button on platform cards is always subtly visible (30% opacity), full on hover
v1.1.0
+Added
- Launched our X/Twitter account @eeemojicom, daily emoji fun facts, cultural deep dives, and viral stories
- Posted our first tweet, the story of how a 👍 reply cost a Canadian farmer $82,200
- Custom social media card generator with color-matched backgrounds, multiple emoji glyph styles, and per-platform aspect ratios
- High-resolution emoji images (up to 512px) seeded across Google, Microsoft, Facebook, Twitter, Noto, and OpenMoji collections
- RSL 1.0 (Really Simple Licensing) implementation, machine-readable AI licensing terms at /license.xml
- Expanded llms.txt with direct links to all guides, blog posts, comparisons, category hubs, and top 29 emoji pages
~Changed
- Homepage category links and emoji list now use Next.js Link for faster client-side navigation
- Search results show a "Go to page" link instead of the raw slug
- Internal navigation audit across all page types, all internal links now use Next.js Link
v1.0.0
+Added
- Launched eeemoji.com, the emoji encyclopedia with 2,000+ hand-written pages
- Research articles for every emoji: meaning, usage trends, viral moments, cultural context, and generational insights
- Usage trend charts and demographic data visualizations powered by Google Trends and social media data
- Viral moment tracking, documenting when and where emojis go viral, with dates and sources
- Cultural analysis, how emoji meaning changes across countries, platforms, and generations
- Meaning by context, what an emoji means from a crush vs a coworker vs a stranger
- Interactive trivia quizzes on every emoji page
- Emoji combination suggestions with descriptions and use cases
- Design timeline showing how each emoji evolved across Unicode versions and platforms
- Text representations, ASCII art, kaomoji, and emoticons with origin tracking
- Caption ideas for Instagram, TikTok, and other platforms
- Aesthetic emoji sets organized by theme
- User polls for voting on emoji interpretations
- FAQ sections with common questions answered per emoji
- Emoji picker comparison chart with benchmarks and feature matrices
- Guides for Slack, Discord, keyboard shortcuts, accessibility, and developers
- Blog with deep-dive articles
- One-click copy for any emoji, favorites with cloud sync, dark mode, and full keyboard accessibility
~Changed
- Rebranded from "emoji picker" to "emoji encyclopedia"
- New tagline: "Every emoji has a story. We wrote them all."
- Homepage redesigned with encyclopedia positioning and 11 feature highlights
- Header, footer, and about page rebuilt to reflect the research-first identity
- Consistent page layout and navigation across all page types