Show HN: One clean, developer-focused page for every Unicode symbol
81 points
4 days ago
| 19 comments
| fontgenerator.design
| HN
I’m building a Unicode reference where each symbol has its own dev-friendly page with all relevant encodings.

Example: [https://fontgenerator.design/symbol/almost-equal-to](https://fontgenerator.design/symbol/almost-equal-to)

Includes Unicode, HTML, CSS, JS, UTF-8/16 bytes, URL encoding, and usage examples.

The same structure is used across thousands of symbols (math, arrows, currency, tech/UI, punctuation).

Built because existing references are fragmented. Feedback welcome.

Fileformat
1 hour ago
[-]
I run a couple similar sites:

FileFormat.Info[1] has a page per codepoint. It has been around awhile, so the UI isn't as whizzy, but it has all the data and works w/o JavaScript

UnicodeSearch[2] is an updated search UI that uses JavaScript and the excellent Tabulator grid widget.

There are actually a ton of similar sites with a page-per-codepoint. It is all fun to make one, until the bots come along and hammer every page.

[1] https://www.fileformat.info/info/unicode/char/2248/index.htm

[2] https://www.unicodesearch.org/

reply
darrenf
46 minutes ago
[-]
Long time fileformat.info user. here, just wanted to say thanks -- always found it incredibly useful for this exact purpose.
reply
hollerith
2 minutes ago
[-]
I remember a similar resource for ASCII. Oh, wait! ASCII was simple enough not to require extensive documentation.
reply
WA
3 hours ago
[-]
Nice, but way too many abbreviated descriptions and no way to see the full name of a symbol without clicking on it. Needs a tooltip / title.

Or better, if 90% of all symbol names are abbreviated, your design simply doesn't work. This is especially apparent in the "arrows" section.

reply
yarlinghe
2 hours ago
[-]
You’re right.

The abbreviations (arrows in particular) made scanning worse than it should be. I’ve pushed a quick update: full names on hover/focus, plus a Compact / Readable toggle for the grid.

Thanks for the nudge.

reply
jdeisenberg
5 hours ago
[-]
I’m looking at the currency block. Each box has a colored “drop shadow”. I spent a minute or so trying to figure out what the significance of the color is. Finally, I noticed that the color appears to cycle between cyan, magenta, and yellow. Is this a design element only, or do the colors actually have some meaning with respect to the symbol?
reply
spoiler
4 hours ago
[-]
Not the author, but it seems to be only stylistic
reply
yarlinghe
4 hours ago
[-]
Purely cosmetic. In hindsight, probably unnecessary — but once you add color, it’s hard to stop
reply
troupo
2 hours ago
[-]
I was going to complain about something or other in the design but then stopped myself: we don't get enough quirky designs as it is.
reply
wdporter
2 hours ago
[-]
I find this page the cleanest: https://en.wikipedia.org/wiki/List_of_Unicode_characters. I can usually just do a Ctrl-F and find what I want.
reply
whalesalad
12 minutes ago
[-]
Gotta pay homage to the OG: https://raquo.net/rsaquo/
reply
california-og
1 hour ago
[-]
My go-to site for Unicode symbols is graphemica.com. I like that you show very directly the different use cases, but miss different encodings and the ability to browse unicode sequentially.
reply
keepamovin
4 hours ago
[-]
This is beautiful. Love the design. When I read the title I thought it was "one page per Unicode" so I click on the codes and hope a page will open with a giant Unicode where I can see about it in details.

Oh well! Still good.

When I click the "Click to copy" my UI reflex tells me to look for a "Copied!" or similar acknowledgement. But I don't see one, so there's uncertainty if it was copied safely to my invisible clipboard or not.

Please keep making this, it's good! What inspired you for the design? I like this style, and notice it around, but can't pinpoint.

reply
phforms
3 hours ago
[-]
Don’t know if it was added after your comment, but there actually is one separate page for each character, just click the arrow in the top-right corner of each box. For more "giant" character previews I can recommend https://decodeunicode.org/en (which is more focussed on writing systems though).

There is also a "Copied x" toast (is this the correct term? idk) at the bottom of the viewport when you click a character box, maybe it was also added later on.

reply
keepamovin
1 hour ago
[-]
Or maybe I just wasn't looking at the bottom! Thanks
reply
ChrisMarshallNY
4 hours ago
[-]
Very nice.

I found it odd, that tapping on a square “highlights” it, by making it “pop,” but nothing else really happens.

It took me a bit to figure out that I need to actually select the arrow in the upper right corner, to get the page.

reply
tantalor
32 minutes ago
[-]
The arrow is too small to click on mobile
reply
yarlinghe
4 days ago
[-]
Planning to add more symbol-specific notes (confusables, common pitfalls, rendering quirks). Curious what details people usually look for but can’t find.
reply
__patchbit__
4 days ago
[-]
I don't know how to find the ideal font for the missing glyph on my environment which is BSD.

Using the `unicode' command from plan9userspace, for example

   unicode 2ff0-2fff
the last three symbols are shown inside emacs as squares with the four hex values inside.

Typing in the search field `2fff' finds `no match found'.

reply
yarlinghe
4 days ago
[-]
Good catch — I just pushed an update based on this.

The symbols search now supports code-point lookup, so you can search by:

U+2FFF

0x2FFF

plain hex (2fff, 4–6 digits)

This makes it possible to jump straight to a symbol page even when the glyph doesn’t render locally and you only have the code point (like the Emacs/BSD case you described).

One limitation to note: some symbols aren’t covered by common or default system fonts, so they may still appear as tofu boxes depending on the font stack. That’s a font coverage issue rather than Unicode itself.

Appreciate you calling this out — this was exactly the kind of workflow gap I wanted to catch.

reply
longor1996
4 hours ago
[-]
Maybe you could use unifont glyphs (drawn as SVGs?) as fallback?
reply
typeofhuman
2 hours ago
[-]
No disrespect but I would not call this "clean". The design is overwhelmingly cluttered and distracting. Especially given that each symbol is obscured by a black square with an arrow covering it. The symbols are themselves very small.

Maybe get rid of all the noise and just display the symbols in a nice grid without all the fluff or layers.

reply
lejalv
1 hour ago
[-]
It feels really noisy and specifically, not clean for me too, so much that it pushes me away. It's interesting and fortunate that it works for the author and some (most?) commentators.
reply
hnlmorg
2 hours ago
[-]
I agree. Unicode references sites are numerous and yet this is one of the worst I’ve used in terms of distracting visual noise.
reply
arendtio
3 hours ago
[-]
Some constructive criticism:

Please don't display text directly on the grid background image. It makes it impossible to read the text easily. Currently, this is the case when you open the page for a specific symbol in the 'Usage & Context' section.

reply
yarlinghe
1 hour ago
[-]
Noted.

Fixed.

reply
victrflow
4 hours ago
[-]
Ohh, this is great! I actually was looking for something like this the other day. Thanks for sharing and nice work!
reply
chrismorgan
3 hours ago
[-]
> Use an HTML entity, a decimal code, or a hex code.

Please no: just write the character. <, & and (in quoted attributes) " or ' are the only characters that need to be encoded; a few others have arguable benefit to being encoded (most notably NO-BREAK SPACE), but most Unicode characters should just be put in literally. The days when you couldn’t be confident of the file encoding are past: your HTML is being served as UTF-8 (or in the rare case it isn’t, you should fix that instead of avoiding non-ASCII in the source).

Same deal with CSS (" and \ are the only ones you need to escape) and JavaScript (" or ' or `, as appropriate).

URLs? Occasionally you may encounter a legacy system where you need to percent-encode it yourself (similarly around punycoding internationalised domain names), but you can almost always (and thus, in my opinion, should) just write it and leave anything that wants it to be ASCII to perform the percent-encoding itself.

Excel I can’t comment on, but I presume you can just write "≈" and UNICHAR should almost never be used.

reply
yarlinghe
2 hours ago
[-]
Yep — fully agree.

For modern HTML/CSS/JS, you should just write the character and serve UTF-8. The entities / codes are there purely as reference for legacy cases, debugging, or when you only have a code point and no rendered glyph — not as a recommendation for normal authoring.

reply
mda
4 hours ago
[-]
On mobile, the expand icon covers 1/4 of each character so it is hard to see what they are
reply
StrangeSound
3 hours ago
[-]
Opposite problem for me. I'm finding it impossible to expand because the button is so small!
reply
yarlinghe
4 hours ago
[-]
Yeah, mobile is rougher than desktop right now. Thanks for flagging it.
reply
LordGrey
4 days ago
[-]
I really like this. I appreciate the many "copy" buttons that make it easy to grab various font values once I find a character. Good job!
reply
yarlinghe
4 days ago
[-]
Thanks — glad the copy buttons are useful. That was exactly the goal.
reply
rswail
4 hours ago
[-]
I'd like the hint to display the hidden parts of each box when hovered.

I don't need to be told on each one to "Click to Copy".

But nice concept.

reply
yarlinghe
4 hours ago
[-]
Good points. The hover hint could definitely do more useful work, and the repeated “Click to Copy” is probably overexplaining. UI polish still very much in progress
reply
Freak_NL
5 hours ago
[-]
> We use cookies and similar technologies for analytics (Google Analytics) and session recording (Microsoft Clarity). Ads may be enabled in the future (Google AdSense). By continuing to use this site, you acknowledge this notice. You can manage cookies in your browser settings. EU/UK users: this serves as our cookie notice.

No. Please just give me an option to reject all tracking cookies instead of just kicking me in the face with a done deal.

Whoever wrote this 'EU/UK users: this serves as our cookie notice' is ignorant of the actual law. Have a look at:

https://gdpr.eu/cookies/

reply
yarlinghe
4 hours ago
[-]
Fair point — you’re right to call this out. I’ve now removed Microsoft Clarity (no session recording/heatmaps), and GA4 is opt‑in with a real “Reject all” option (default off). This is already deployed.
reply
alexpadula
2 hours ago
[-]
Useful!
reply