Skip to content

Flows-git/i18n-manager

Repository files navigation

i18n Manager

Nuxt Bun Nitro Docker TypeScript Vue.js License

A user-friendly web application for easy management of i18n JSON files for developers. With an intuitive user interface, you can manage translation keys, add languages, and efficiently organize your internationalization directly in your application.


✨ Features

  • 🌍 Translation Management: View and edit all i18n keys in a centralized interface
  • 🔧 Real-time Editing: All changes are automatically saved to the corresponding JSON files and are immediately available in your application
  • 🌐 Multi-Language Support: Manage multiple languages simultaneously
  • Dynamic Addition: Create new translation keys and languages on-the-fly
  • 🗑️ Delete Function: Remove unnecessary keys and languages
  • 🔍 Find Missing Translations: Identify and manage missing translation keys easily
  • 🐳 Docker Ready: Easy usage with Docker Compose

📋 Prerequisites

  • Docker & Docker Compose installed
  • A project with i18n JSON files (or an empty folder if you haven't any translations yet) 📁 Structure of translation folder
    /data/                    # Mounted i18n folder
    ├── de.json              # German translations
    ├── en.json              # English translations
    ├── fr.json              # French translations
    └── ...                  # Additional language files
    

🚀 Quick Start

📦 With Docker Compose

Create a docker-compose.yml file in your project root:

name: i18n-manager

services:
  i18n-manager:
    build: docker.io/flowame/i18n-manager:latest
    ports:
      - '4000:3000'
    # mount i18n folder to the service
    volumes:
      - ./path/to/i18nFolder:/app/data

Start the service:

docker-compose up -d

Open your browser and navigate to: http://localhost:4000

🐳 With Docker

Run Docker Container with mounted i18n folder

docker run -p 4000:3000 -v ./your/i18n/folder:/app/data docker.io/flowame/i18n-manager:latest

Open your browser and navigate to: http://localhost:4000

🔧 Development

Clone the repository

git clone https://github.com/Flows-git/i18n-manager.git
cd i18n-manager

Install Dependencies

bun install

Start development server

bun dev

🔌 API Endpoints

Method Endpoint Description
GET /api/i18n Get all translations
POST /api/i18n Create or update translation key
PUT /api/i18n Update translation key
DELETE /api/i18n Deletes a translation key from all locales
POST /api/locales Create locale files
PUT /api/locales Create and Remove locale files

🚀 Deployment

Build and push the application to dockerhub

# Build production image
docker build -t flowame/i18n-manager:latest .

# push to dockerhub
docker push flowame/i18n-manager:latest

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License. See LICENSE for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published