Introduction

Automatic internationalization for Vue and Nuxt applications

Stringer is a CLI that automatically finds and converts user-facing text in your Vue and Nuxt apps to i18n-formatted keys, then translates them to 47 languages.

Stringer CLI Logo

Why Stringer?

What takes a professional localization engineer weeks (or months for large projects), Stringer does in minutes — with consistent quality across your entire codebase.

Automatic Setup

Framework-specific i18n configuration generated for you — no manual setup required

Intelligent Conversion

Understands code context to accurately identify and convert translatable strings

Fast Processing

Batch processing converts hundreds of files in minutes

How It Works

1. Analyze

Scans your codebase and identifies all translatable strings

2. Convert

Replaces hardcoded text with translation function calls

3. Translate

Generates high-quality translations for your target languages

Example

Your code:

<h1>Welcome to our application</h1>
<p>Please enter your email address</p>

After Stringer:

<h1>{{ t('welcome.title') }}</h1>
<p>{{ t('welcome.emailPrompt') }}</p>

Generated locale file:

{
  "welcome": {
    "title": "Welcome to our application",
    "emailPrompt": "Please enter your email address"
  }
}

What's Converted

Stringer focuses on user-facing strings — text that your users see in the interface.

Converted:

  • Text content in templates
  • Button labels, headings, paragraphs
  • Placeholder text and form labels
  • Alert messages shown to users
  • Error messages displayed in the UI

Not converted:

  • Code comments
  • Console logs and debug messages
  • Content inside <style> tags
  • Technical identifiers and constants

Supported Frameworks

Quick Start

# Install Stringer CLI
npm install -g stringer-cli

# Run in your project
stringer

Follow the interactive prompts to:

  1. Select your framework
  2. Choose files to convert
  3. Pick target languages for translation

Security & Privacy

We treat your code’s privacy and security as mission-critical. Every CLI run follows these guarantees:

  • Only translatable content is sent to our processing servers; everything else stays local.
  • Code is never stored—it is streamed, processed, and returned immediately to your CLI for replacement.
  • Transmission is encrypted end-to-end, so your content is safe in transit.
  • Nothing is viewable or downloadable by the Stringer team or any third party.

What we store (and why)

  • Framework metadata (Vue or Nuxt) helps us understand which integrations are most used.
  • Conversion and translation counts keep the /history and /billing dashboards accurate.

Feedback & Bug Reporting

Submit snippets for edge cases or incorrect conversions so we can investigate and evolve the system.

Submit feedback or edge cases →

Edge case submission screen

Upload specific files or snippets that need another review.

General feedback screen

Report bugs, ideas, or general feedback through the portal.


Next Steps