New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

stringer-cli

Package Overview
Dependencies
Maintainers
1
Versions
40
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

stringer-cli

A powerful CLI tool to extract, manage, and translate text strings in your codebase. Supports Vue, React, Next.js, Nuxt, and more.

latest
Source
npmnpm
Version
1.5.0-beta
Version published
Maintainers
1
Created
Source
Stringer CLI

Stringer CLI

Effortless i18n for modern web apps

Transform your codebase into a globally-ready application with intelligent string extraction, seamless translation workflows, and framework-specific optimizations.

🚀 Get Started📚 Documentation📦 VSCode Extension💬 Discord


⚡ Installation

npm install -g stringer-cli

🔄 Updating Stringer CLI

If you're updating to a new version and the stringer command doesn't use the latest version, uninstall and reinstall:

# For npm users
npm uninstall -g stringer-cli
npm install -g stringer-cli

# For pnpm users
pnpm uninstall -g stringer-cli
pnpm install -g stringer-cli

This ensures the global symlink is properly updated. The postinstall script will verify your installation automatically.


Who is behind Stringer CLI?

Stringer CLI is a project by Titus Decali, a full-stack developer living in Seoul, S. Korea.

This project was selected and funded in part by the Korean government's K-Startup Social Venture program in February of 2025.

After the pain of localizing many React and Vue projects using i18n, I decided to build a tool that would make this complex and frustrating process easier for all devs. Stringer handles the intricacies of i18n for you: manually extracting, translating and managing text strings in your app.

The CLI itself is built with Clack and utilizes Stringer's own open-source clack-tree-select prompt for selecting files to process: clack-tree-select.

🎯 Why Stringer CLI?

Stop wrestling with manual string extraction and translation management. Stringer CLI automates the entire internationalization process, letting you focus on building great products while we handle the complexity of going global.

Beyond simple string extraction, Stringer handles the heavy lifting of i18n configuration—URL-based routing, automatic link prefixing, and even middleware repair to ensure your existing code works seamlessly with i18n routing (without breaking what you've already built). Under the hood, a multi-step processing pipeline combines logical operations with fine-tuned AI to deliver accurate results quickly and affordably.

From this:

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

To this in seconds:

<h1>{{ t('welcome.9824') }}</h1>
<p>{{ t('welcome.2516') }}</p>

And will even generate the i18n locale files for you!

{
  "welcome": {
    "9824": "Welcome to our application",
    "2516": "Please enter your email address"
  }
}

🚀 Quick Start

  • Start the magic:

    stringer
    
  • Follow the beautiful interactive prompts - we'll guide you through everything!


✨ Key Features

FeatureDescription
🎨 Interactive CLIBeautiful prompts that guide you through the entire process
🧠 Framework SupportVue, Nuxt, React, and Next.js with automatic i18n setup
Fast ProcessingHandles large codebases efficiently
🌍 Translation ManagementConvert strings and translate to multiple languages
🔧 Zero ConfigGet started immediately without complex setup
🔒 SecureYour code is encrypted in transit and never stored
🧩 VS Code ExtensionStringer i18n Helper for inline previews and quick key additions

📚 See full documentation →


🔄 Team Sync

When working with a team, Stringer automatically tracks changes to your base language file via a .stringer-sync.json file in your locales folder. This file should be committed to Git — it enables automatic sync detection across all team members without any additional setup.

Key benefits:

  • 🔄 Automatic re-translation: Modified base language text automatically re-translates to all supported languages
  • 💰 Token efficiency: Only changed keys are re-translated, dramatically reducing token usage compared to full re-translation

⚠️ Important: Do not add .stringer-sync.json to your .gitignore — this file must be committed to enable team sync.


🌐 URL-based i18n (SEO-friendly locale prefixes)

Add language prefixes to your URLs (e.g., /en/..., /fr/...) to improve global SEO while minimizing risk to existing routing and middleware.

  • Opt-in and reversible: You'll be prompted during the convert flow.
  • Safe scaffolds per framework (no auto-writes unless you choose to integrate)
stringer url-i18n --analyze    # Analyze your project without changes
stringer url-i18n --scaffold   # Generate scaffold files
stringer url-i18n --enable     # Toggle feature on
stringer url-i18n --disable    # Toggle feature off
stringer url-i18n --revert     # Remove generated scaffolds

📖 Commands

stringer

The most user-friendly way to work with Stringer. Perfect for first-time users and complex workflows.

Direct Commands (For Power Users)

# Authentication
stringer login              # Connect your account
stringer logout             # Log out of your account
stringer auth-status        # Check connection status
stringer -v                 # Check version

# Core Operations (all available in interactive mode via `stringer` command)
stringer convert            # Extract and convert strings
stringer translate          # Translate to target languages
stringer align              # Sync translation files

# Utilities
stringer help               # Get detailed help
stringer --help-path        # Fix PATH issues (for users of OhMyZSH, etc.)

📦 Supported Frameworks

  • Vue 3
  • Nuxt.js
  • React
  • Next.js

🐛 Known Issues

  • If using 🦁 Brave browser, you will need to disable the Ad Blocker to complete authentication between the Stringer-cli.com site and the CLI.

🚀 Ready to Go Global?

Getting started with internationalization has never been easier. Join thousands of developers who trust Stringer CLI to power their global applications.

Create your free account →


💰 Simple, Usage-Based Pricing

Pay only for what you use. Convert your React/Vue strings to i18n format, then translate them.

  • Conversion: $0.00035 per token
  • Translation: $0.00055 per token

🎉 Launch promo: 45% off until February 28th, 2026

View pricing →


🛠️ System Requirements

  • Node.js 16.0.0 or higher
  • Vue 3 & Nuxt 3/4 are supported currently, with support for React & Next.js coming very soon!
  • Unfortunately, we are not supporting the Options API in Vue projects at this time.

🆘 Need Help?


Ready to make your app speak every language?
Start your internationalization journey today →

Keywords

cli

FAQs

Package last updated on 18 Dec 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts