Skip to content

Repository files navigation

Plain2TeX

MIT License

Convert plain-text math expressions to professionally typeset LaTeX instantly. Export as PNG, SVG, or copy LaTeX with one click—all in your browser.

🌐 Try it live: https://plain2tex.vercel.app

🚀 Key Features

Core Features

  • Instant LaTeX Conversion: Type plain math expressions and see them rendered live.
  • Export Options: Copy LaTeX, export as PNG or SVG with a single click.
  • Live Preview: WYSIWYG preview with proper formatting and scaling.
  • Responsive UI: Works seamlessly on desktop and mobile; side-by-side editor + preview or tab-based layout.
  • Privacy-First: 100% client-side; your data never leaves your browser.
  • Keyboard Shortcuts / Hotkeys: Perform common actions faster without leaving the keyboard.

Advanced Features

  • Customizable Settings: Adjust rendering, font size, and theme via settings panel.
  • PWA Support: Installable and works offline.
  • Lightweight & Fast: Minimal dependencies for snappy performance.
  • Accessibility Friendly: Keyboard navigation and screen-reader compatible.

⌨️ Keyboard Shortcuts / Hotkeys

Shortcut Action
Mod+Shift+C Copy LaTeX
Mod+Shift+P Export PNG
Mod+Shift+S Export SVG
Mod+K Focus input
Mod+/ Open help
Shift+S Open Settings

Note: Mod = Ctrl (Windows/Linux) or Cmd (Mac)

🛠️ Technology Stack

  • Framework: React 19 + TypeScript
  • Styling: Tailwind CSS v4 + shadcn/ui + Animate UI
  • Icons: Lucide React
  • PWA Support: Vite Plugin PWA
  • Build Tool: Vite 8
  • Code Quality: ESLint + Prettier

⚡ Quick Start

Prerequisites

  • Node.js 20+
  • pnpm 7+ (install with npm i -g pnpm if needed)

Installation

# Clone the repository
git clone https://github.com/art70x/Plain2TeX.git

# Navigate to the project folder
cd Plain2TeX

# Install dependencies
pnpm install

# Start the development server
pnpm dev

The app will run at: http://localhost:3000

Build for Production

# Build production version
pnpm build

# Preview production build
pnpm preview

🤝 Contributing

We welcome contributions! Open issues, suggest features, or submit pull requests. See CONTRIBUTING.md for detailed guidelines.

🙏 Acknowledgments

  • shadcn/ui – Accessible and customizable UI component library.
  • Animate UI – Accessible, customizable, and performance‑focused animated component library for modern web interfaces.
  • TanStack Hotkeys – Type‑safe, cross‑platform keyboard shortcut management library.
  • KaTeX – Fast JavaScript library for rendering LaTeX‑style mathematical notation in browsers.
  • html-to-image – Lightweight JavaScript utility that converts DOM nodes into images (SVG/PNG/JPEG) using HTML5 canvas and SVG serialization.
  • Lucide React – Consistent, lightweight icon set used throughout the interface.
  • Vuetrix – Inspired the project’s architecture, CI workflow, formatting standards, and Vite configuration.
  • Lovable – Used to build the first version of this app.

Made with ❤️ for students and the math community

About

Convert plain-text math expressions to professionally typeset LaTeX instantly. Export as PNG, SVG, or copy LaTeX with one click—all in your browser.

Topics

Resources

Code of conduct

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

Used by

Contributors

Languages