Get Started

Quick Start Guide

Get up and running with LangCTL in under 5 minutes. This guide will walk you through creating your first project and exporting translations.

ℹ️
Note

This guide covers both the Dashboard and CLI workflows. Choose whichever approach fits your workflow best - or use both!

Prerequisites

Before you begin, make sure you have:

  • A LangCTL account (sign up at app.langctl.com)
  • For CLI: Node.js 16+ installed
  • 5 minutes of your time

Option 1: Using the Dashboard

Step 1: Sign Up & Create Organization

  1. Go to app.langctl.com/signup
  2. Enter your email, full name, and password
  3. Click “Sign Up”
  4. You’ll be redirected to create your organization
  5. Enter your organization name (e.g., “My Company”)
  6. Click “Create Organization”

[IMAGE: signup-flow.png - Screenshots showing signup and org creation]

Step 2: Create Your First Project

  1. From the dashboard, click “Create New Project”

  2. Step 1 of 3: Enter project details

    • Name: “My First Project”
    • Description: “Learning LangCTL” (optional)
    • Click “Next”
  3. Step 2 of 3: Select languages

    • Select “English” as default language
    • Add “Spanish” and “French”
    • Click “Next”
  4. Step 3 of 3: Review and confirm

    • Review your selections
    • Click “Create Project”

[IMAGE: project-wizard.png - Three-step project creation wizard]

💡
Tip

You can add more languages later from the project settings page.

Step 3: Add Translation Keys

  1. Click on your newly created project
  2. Click “View Translations”
  3. Click ”+ New Key” button
  4. Fill in the form:
    • Key: home.welcome
    • Module: home (optional but recommended)
    • Description: Welcome message on homepage
    • English: Welcome to our app!
    • Spanish: ¡Bienvenido a nuestra aplicación!
    • French: Bienvenue dans notre application!
  5. Click “Create Key”

[IMAGE: create-key-modal.png - Translation key creation modal]

Step 4: Add More Keys (Optional)

Let’s add a few more keys to make it more interesting:

KeyModuleEnglishSpanishFrench
home.subtitlehomeGet started nowComienza ahoraCommencez maintenant
auth.loginauthLog InIniciar sesiónSe connecter
auth.signupauthSign UpRegistrarseS’inscrire
💡
Pro Tip: AI Translation

Instead of manually entering translations, you can:

  1. Enter only the English translation
  2. Click the “AI Translate” button next to each language field
  3. Review and edit the AI-generated translation
  4. Save time on initial translations!

Step 5: Publish Your Keys

  1. Select the keys you want to publish (use checkboxes)
  2. Click “Bulk Actions” -> “Publish Selected”
  3. Confirm the action

Only published keys will be included in exports.

[IMAGE: publish-keys.png - Bulk publish action]

Step 6: Export Translations

  1. Navigate to Export page (from project menu)
  2. Select export format:
    • Choose “i18next JSON” for web apps
    • Or “Flat JSON” for simplicity
  3. Select language: “English”
  4. Click “Export”
  5. Download the file

Your exported file will look like this:

en.json
{
"home.welcome": "Welcome to our app!",
"home.subtitle": "Get started now",
"auth.login": "Log In",
"auth.signup": "Sign Up"
}

[IMAGE: export-page.png - Export page with format selection]

Place the exported files in your project:

my-project/
├── public/
│   └── locales/
│       ├── en.json    ← Place here
│       ├── es.json
│       └── fr.json
└── src/
  └── ...
npm install -g langctl

Verify installation:

langctl --version
  1. Log in to app.langctl.com
  2. Go to Organization -> API Keys
  3. Click ”+ Create API Key”
  4. Enter name: “My CLI Key”
  5. Copy the key (shown only once!)

[IMAGE: api-key-generation.png - API key creation and display modal]

⚠️
Important

The API key is shown only once! Save it immediately in a secure location.

langctl init

Or authenticate directly:

langctl auth lc_your_api_key_here
langctl projects create "My First Project" \
--languages en,es,fr \
--default-language en
langctl keys create my-first-project home.welcome \
--module home \
--description "Welcome message on homepage" \
--value-en "Welcome to our app!" \
--value-es "¡Bienvenido a nuestra aplicación!" \
--value-fr "Bienvenue dans notre application!"

langctl keys create my-first-project home.subtitle \
--module home \
--value-en "Get started now" \
--value-es "Comienza ahora" \
--value-fr "Commencez maintenant"

langctl keys create my-first-project auth.login \
--module auth \
--value-en "Log In" \
--value-es "Iniciar sesión" \
--value-fr "Se connecter"
langctl keys publish my-first-project \
home.welcome \
home.subtitle \
auth.login

Export for different platforms:

langctl export my-first-project \
-l en \
-f i18n-json \
-o ./public/locales/en.json

langctl export my-first-project \
-l en \
-f ios-strings \
-o ./ios/en.lproj/Localizable.strings

langctl export my-first-project \
-l en \
-f android-xml \
-o ./app/src/main/res/values/strings.xml

langctl export my-first-project \
-l en \
-f flutter-arb \
-o ./lib/l10n/app_en.arb

Now that you have translation files, integrate them with your framework:

Even if you prefer CLI, the dashboard is great for:

  • Visual translation editing
  • Team member management
  • Usage tracking and analytics
  • Reviewing AI translations

Check out the full CLI Reference for advanced features:

  • Bulk operations
  • Filtering and search
  • Team management from terminal
  • Automation scripts
langctl projects add-language my-first-project de
langctl projects add-language my-first-project ja

Already have translation files?

langctl import my-first-project ./old-translations/en.json -l en

Add to your GitHub Actions workflow:

- name: Export translations
run: |
  npm install -g langctl
  langctl auth ${{ secrets.LANGCTL_API_KEY }}
  langctl export my-project -l en -f json -o ./locales/en.json
  langctl export my-project -l es -f json -o ./locales/es.json

Make sure your API key:

  • Starts with lc_
  • Has exactly 64 hexadecimal characters after the prefix
  • Hasn’t been revoked
  • Was copied correctly (no extra spaces)

Use the project slug (URL-friendly name), not the display name:

langctl export my-first-project

langctl export "My First Project"

Make sure your keys are published:

langctl keys publish my-project key1 key2 key3

langctl export my-project -l en

Get Help

Stuck? We’re here to help:

  • CLI Help: Run langctl --help or langctl <command> --help
  • Documentation: Browse the sidebar for detailed guides
  • Email Support: [email protected]
  • GitHub Issues: Report a bug

What’s Next?

Now that you’ve completed the quick start, dive deeper into:

  1. Installation Guide - Detailed setup and configuration
  2. Dashboard Guide - Master the web interface
  3. CLI Reference - Learn all CLI commands
  4. Platform Integrations - Integrate with your stack
💡
Join the Community

Have questions or want to share your experience? Join our community:

  • GitHub Discussions
  • Discord Server (coming soon)
  • Twitter: @langctl