Skip to content

Repository files navigation

Fancify

Fancify turns plain text into 40+ fancy Unicode fonts and styles you can copy and paste anywhere: bold, italic, cursive, medieval, bubbles, small caps, upside down, lookalike scripts, glitch text, and decorative wrappers.

Fancify desktop screenshot

Features

  • 48 text styles across four groups: Unicode alphabets, lookalike scripts, combining-mark decorations, and aesthetic wrappers.
  • Live preview that updates every style as you type.
  • One tap to copy any style to the clipboard, with a toast confirmation.
  • Search to filter styles by name.
  • Fixed two-pane layout that fits the viewport, so only the results list scrolls.
  • Light and dark themes (defaults to dark).
  • Bounded LRU caching so repeated inputs return instantly.

Tech stack

  • Svelte 5 (runes)
  • Rsbuild (rspack) with TypeScript
  • Tailwind CSS v4
  • shadcn-svelte components

Getting started

Prerequisites: Node.js and pnpm.

pnpm install
pnpm dev

Then open the local URL that Rsbuild prints.

Other scripts:

pnpm build         # production build to dist/
pnpm preview       # preview the production build
pnpm svelte-check  # type-check Svelte and TypeScript

Project structure

  • src/lib/fonts/ is the font engine, split by domain: character maps, transforms, decorators, aesthetic wrappers, the style registry, and the cache.
  • src/lib/components/ holds the UI, including the shadcn-svelte set under ui/.
  • src/App.svelte is the generator page.

How it works

Most styles are precomputed character maps, so transforming a letter is a single dictionary lookup. Styles that need it use custom logic instead: upside down reverses the string, regional indicators are joined with a zero-width space to avoid accidental flag emojis, and Zalgo stacks random combining diacritics. The full styled result per input string is memoized in a bounded LRU cache, so retyping or re-editing recent text returns instantly.

Deployment

The repository includes vercel.json configured for Vercel (build command pnpm build, output directory dist). Import the repository into Vercel to deploy.

License

Licensed under the Apache License 2.0. See LICENSE.

Releases

Packages

Contributors

Languages