DEV Community

Vinh Nhan
Vinh Nhan

Posted on

Barrierless: Breaking Language Barriers with Seamless Translations

Hello! 👋

Barrierless is a powerful command-line tool that aims to make language translation simple and efficient. Whether you're working with text files in Chinese, Vietnamese, or any other language, Barrierless provides quick and reliable translations, allowing for smooth communication across language barriers. Powered by GROQCloud's high-performance translation API, this tool offers a straightforward and customizable experience for developers, writers, or anyone needing quick translations.

barrierless-demo

Key Features

  • Auto Language Detection: Automatically detects the language of the input text for a hassle-free experience.
  • Multiple Language Support: Translate text files between a wide variety of languages.
  • GROQCloud Integration: Uses the GROQCloud API for high-performance, accurate translations.
  • Easy to Use: Simple command-line interface, making it accessible even for beginners.
  • Customizable: The tool is flexible, allowing for extension and adaptation to support additional language features or APIs.

Installation Guide

Follow these steps to get Barrierless up and running on your machine.

Step 1: Clone the Repository

Begin by cloning the project repository from GitHub:

git clone git@github.com:vinhyan/barrierless.git
Enter fullscreen mode Exit fullscreen mode

Step 2: Navigate to the Project Directory

cd barrierless
Enter fullscreen mode Exit fullscreen mode

Step 3: Install Dependencies

Install the necessary dependencies by running:

npm install
Enter fullscreen mode Exit fullscreen mode

Step 4: Set Up API Key

Create a .env file to store your GROQCloud API key. Refer to the .env.example file for instructions on how to obtain the key.

Step 5: Link the CLI Tool

If you didn’t use npm install -g in the previous step, run the following to link the tool:

npm link
Enter fullscreen mode Exit fullscreen mode

You're now ready to use Barrierless for translations!

Using Barrierless

The tool is designed for easy usage, even for those unfamiliar with command-line interfaces. Here's how you can start translating your text files:

Basic Command

bl-bot <input files> [-l <target language>]
Enter fullscreen mode Exit fullscreen mode
  • If no target language is specified, the translation will default to English.

Available Options

  • -v, --version: Displays the current version of Barrierless.
  • -l, --language <lang>: Sets the target language for translation (default: "English").
  • -h, --help: Shows the help menu.
  • -o, --output: Defines the output filenames for translated files.
  • -m, --model: Specifies the AI provider model (default: "llama3-8b-8192").

Examples of Use

Here are some examples that show how to use Barrierless for various translation tasks:

1. Translating a Chinese Text File to English

bl-bot examples/cn-file.txt
Enter fullscreen mode Exit fullscreen mode

Output:

*** Translating "examples/cn-file.txt"... ***
In this fast-paced world, learning new skills is the key to staying competitive. Whether it's programming, language learning, or other professional skills, continuous learning can help us make continuous progress. Effort and perseverance will bring rich rewards. Success is not achieved overnight, but rather through continuous accumulation and effort, making our dreams a reality.
*** Done! ***
Enter fullscreen mode Exit fullscreen mode

2. Translating an English Text File to Cantonese

bl-bot examples/en-file.txt -l cantonese
Enter fullscreen mode Exit fullscreen mode

Output:

*** Translating "examples/en-file.txt"... ***
每日係新機會學會新嘢。細步可以帶來大變化。繼續嘗試,你會見到時間的進步。
*** Done! ***
Enter fullscreen mode Exit fullscreen mode

3. Translating Multiple Files into Vietnamese

In this example, we translate two files (in Chinese and English) to Vietnamese and save the outputs to custom filenames.

bl-bot examples/* -l vietnamese -o cn-vi en-vi
Enter fullscreen mode Exit fullscreen mode

Output:

*** cn-vi is translated and saved to "cn-vi.txt"... ***
*** en-vi is translated and saved to "en-vi.txt"... ***
*** Done! ***
Enter fullscreen mode Exit fullscreen mode

Conclusion

Barrierless is a handy and powerful tool for anyone needing reliable, quick translations. With its simple setup and broad language support, it’s ideal for developers and non-developers alike. Whether you're translating individual text files or working with multiple documents, Barrierless ensures that language is no longer a barrier.

Top comments (0)