Skip to content

Fontcetera: A Chrome extension for easy Unicode text formatting with multiple fonts and styles.

License

Notifications You must be signed in to change notification settings

YoussefRbahi/fontcetera

Repository files navigation

Fontcetera Banner

Fontcetera - Uniform Text Formatter

Fontcetera is a Chrome extension that allows you to easily format your text with various Unicode fonts and styles.

Features

  • Multiple font styles including Serif, Sans-serif, Gothic, Script, Double-struck, Monospace, and Full width.
  • Text decorations: Bold, Italic, Underline, Strikethrough, and Overline (availability depends on the selected font).
  • Real-time text formatting preview.
  • Easy copy-to-clipboard functionality.
  • Simple and intuitive user interface.

Fontcetera Screenshot

Usage

  1. Enter your text in the input field.
  2. Select the desired font from the dropdown menu.
  3. Apply text decorations using the buttons (B, I, U, S, O).
  4. The formatted text will be displayed in the output field.
  5. Click "Copy" to copy the formatted text to your clipboard.

Font Options

  • Serif (default)
  • Sans-serif
  • Gothic
  • Script
  • Double-struck
  • Monospace
  • Full width

Note: Not all decorations are available for every font. The UI will disable options that are not applicable to the selected font.

Development

Prerequisites

  • Node.js
  • npm or yarn

Installation

  1. Clone the repository:

    git clone https://github.com/youssefrbahi/fontcetera.git
    cd fontcetera
  2. Install dependencies:

    npm install
    # or
    yarn install
  3. Start the development server:

    npm run dev
    # or
    yarn dev
  4. Open Chrome and navigate to chrome://extensions/.

  5. Enable "Developer mode" by toggling the switch in the top right corner.

  6. Click "Load unpacked" and select the dist directory.

Build

To create a production build, run:

npm run build
# or
yarn build

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License.

Author

Created by Youssef Rbahi

Acknowledgements

This project uses the following libraries and resources:

  • React: A JavaScript library for building user interfaces
  • Vite: Next Generation Frontend Tooling
  • CRXJS A Vite plugin to help develop Chrome extensions
  • toUnicodeVariant: A JavaScript library to convert strings to unicode variants
  • Tailwind CSS: A utility-first CSS framework
  • SVGR: Transform SVGs into React components
  • Font Awesome: For the house and info circle icons
  • TypeScript: A typed superset of JavaScript
  • ESLint: A tool for identifying and reporting on patterns in JavaScript
  • Prettier: An opinionated code formatter

Feel free to reach out if you have any questions or suggestions!