Blog

How to Build a Voice-to-Translation App with BuildShip: Step-by-Step Guide

Tutorial

·

Jul 24, 2025

Ever wanted to create an app that can translate spoken words from one language to another? With BuildShip's powerful workflow automation platform, you can build a complete voice-to-translation application without writing complex code. This guide walks you through creating an app that lets users upload audio in any language and receive both text and audio translations in their desired language.

Ever wanted to create an app that can translate spoken words from one language to another? With BuildShip's powerful workflow automation platform, you can build a complete voice-to-translation application without writing complex code. This guide walks you through creating an app that lets users upload audio in any language and receive both text and audio translations in their desired language.

Ever wanted to create an app that can translate spoken words from one language to another? With BuildShip's powerful workflow automation platform, you can build a complete voice-to-translation application without writing complex code. This guide walks you through creating an app that lets users upload audio in any language and receive both text and audio translations in their desired language.

What You'll Build

By the end of this tutorial, you'll have created an application that:

- Accepts audio file uploads in any language

- Transcribes speech to text using OpenAI's Whisper API

- Translates the transcribed text to a target language

- Converts the translated text back to speech

- Delivers all three outputs (original transcription, translated text, and translated audio) to your users

Let's get started!

Setting Up Your BuildShip Workflow

Step 1: Create a New Workflow and Define Inputs

Start by creating a new workflow in BuildShip. You'll need two input parameters:

- A file input named "voice file" for the audio upload

- A string input named "language" where users specify their desired translation language

Step 2: Add Speech-to-Text Transcription

1. Add the 'Whisper speech-to-text' node to your workflow

2. Configure the node:

- Set the input to the "voice file" from your workflow inputs

- Set response format to "verbose JSON"

- Enable "timestamps by segment" for detailed output

Before testing, make sure to add your OpenAI API key:

1. Click "Add Key"

2. Navigate to OpenAI's platform to create a secret key

3. Paste your key into BuildShip

Test the node by uploading a sample audio file. You should receive a transcription with timestamps for each segment.

Step 3: Translate the Transcribed Text

1. Add the 'OpenAI text generator' node

2. For instructions, enter: "Please translate the provided text into {{language}}"

3. For the prompt, select the transcription output from the Whisper node

Test this step by uploading an audio file and selecting a target language (like German or Spanish). You should see the translated text in your output.

Step 4: Convert Translated Text to Speech

1. Add the 'OpenAI text-to-speech' node

2. Set the input text to the output from the text generator node

3. Optionally customize the voice or speech speed

When you test this step, you'll receive a long base64-encoded string representing the audio file.

Step 5: Convert Base64 to a Playable Audio File

1. Add the BuildShip file storage upload base64 file node

2. Set the file content to the output from the text-to-speech node

3. For the filename, use JavaScript to generate a dynamic name: `Date.now() + ".mp3"`

Step 6: Configure the Final Output

Create a custom output with three components:

1. The original transcription

2. The translated text

3. The URL to the translated audio file

Test your complete workflow to ensure all three outputs are generated correctly.

Adding a Trigger and API Endpoint

To make your workflow accessible as an API:

1. Add a REST API file upload trigger

2. Map your inputs:

- Connect the file object from the trigger data to your "voice file" input

- Map the language parameter from the trigger body to your "language" input

3. Deploy your workflow changes

Creating a User Interface with Bolt.new

Now that your API is ready, you can create a simple interface:

1. Go to Bolt.new

2. Create a new app

3. Design an interface with:

- A file upload component for audio files

- A text input or dropdown for selecting the target language

- Display areas for showing the transcription, translation, and audio playback

To connect your Bolt app to your BuildShip workflow:

1. Go to the Usage tab in BuildShip

2. Copy the API usage code

3. Implement this code in your Bolt app to handle the API calls

Debugging and Testing

If you encounter issues with your integration:

1. Check the BuildShip logs to verify your workflow is processing correctly

2. Ensure your API calls from Bolt include the correct parameters

3. Verify that your Bolt app correctly handles the response format

Customization Options

Your voice-to-translation app can be customized in several ways:

- Voice options: Experiment with different voices in the text-to-speech node

- Speech speed: Adjust the speed parameter for faster or slower audio output

- Additional languages: Support multiple language options in your interface

- Error handling: Add validation and error messages for a better user experience

- Timestamps: Use the segment timestamps to create synchronized subtitles

Limitations and Considerations

When building your voice-to-translation app, keep in mind:

- API costs: OpenAI's APIs have usage-based pricing, so monitor your usage

- File size limits: Very large audio files may encounter processing limits

- Language support: While Whisper supports many languages, accuracy varies

- Translation quality: Complex idioms or technical terms may not translate perfectly

For a complete video tutorial guide, please click below:

Conclusion

Congratulations! You've built a complete voice-to-translation application using BuildShip's workflow automation platform. This powerful tool combines OpenAI's speech recognition, translation, and text-to-speech capabilities into a seamless experience for your users.

The best part is that you've accomplished this without writing complex code or managing multiple API integrations manually. BuildShip handles the orchestration, allowing you to focus on creating a great user experience.

Ready to take your app further? Consider adding features like:

- Support for real-time recording instead of just file uploads

- Multiple language detection for automatic source language identification

- Custom vocabulary for domain-specific terminology

- Integration with other services in your tech stack

We can't wait to see what you build with these powerful tools!

What You'll Build

By the end of this tutorial, you'll have created an application that:

- Accepts audio file uploads in any language

- Transcribes speech to text using OpenAI's Whisper API

- Translates the transcribed text to a target language

- Converts the translated text back to speech

- Delivers all three outputs (original transcription, translated text, and translated audio) to your users

Let's get started!

Setting Up Your BuildShip Workflow

Step 1: Create a New Workflow and Define Inputs

Start by creating a new workflow in BuildShip. You'll need two input parameters:

- A file input named "voice file" for the audio upload

- A string input named "language" where users specify their desired translation language

Step 2: Add Speech-to-Text Transcription

1. Add the 'Whisper speech-to-text' node to your workflow

2. Configure the node:

- Set the input to the "voice file" from your workflow inputs

- Set response format to "verbose JSON"

- Enable "timestamps by segment" for detailed output

Before testing, make sure to add your OpenAI API key:

1. Click "Add Key"

2. Navigate to OpenAI's platform to create a secret key

3. Paste your key into BuildShip

Test the node by uploading a sample audio file. You should receive a transcription with timestamps for each segment.

Step 3: Translate the Transcribed Text

1. Add the 'OpenAI text generator' node

2. For instructions, enter: "Please translate the provided text into {{language}}"

3. For the prompt, select the transcription output from the Whisper node

Test this step by uploading an audio file and selecting a target language (like German or Spanish). You should see the translated text in your output.

Step 4: Convert Translated Text to Speech

1. Add the 'OpenAI text-to-speech' node

2. Set the input text to the output from the text generator node

3. Optionally customize the voice or speech speed

When you test this step, you'll receive a long base64-encoded string representing the audio file.

Step 5: Convert Base64 to a Playable Audio File

1. Add the BuildShip file storage upload base64 file node

2. Set the file content to the output from the text-to-speech node

3. For the filename, use JavaScript to generate a dynamic name: `Date.now() + ".mp3"`

Step 6: Configure the Final Output

Create a custom output with three components:

1. The original transcription

2. The translated text

3. The URL to the translated audio file

Test your complete workflow to ensure all three outputs are generated correctly.

Adding a Trigger and API Endpoint

To make your workflow accessible as an API:

1. Add a REST API file upload trigger

2. Map your inputs:

- Connect the file object from the trigger data to your "voice file" input

- Map the language parameter from the trigger body to your "language" input

3. Deploy your workflow changes

Creating a User Interface with Bolt.new

Now that your API is ready, you can create a simple interface:

1. Go to Bolt.new

2. Create a new app

3. Design an interface with:

- A file upload component for audio files

- A text input or dropdown for selecting the target language

- Display areas for showing the transcription, translation, and audio playback

To connect your Bolt app to your BuildShip workflow:

1. Go to the Usage tab in BuildShip

2. Copy the API usage code

3. Implement this code in your Bolt app to handle the API calls

Debugging and Testing

If you encounter issues with your integration:

1. Check the BuildShip logs to verify your workflow is processing correctly

2. Ensure your API calls from Bolt include the correct parameters

3. Verify that your Bolt app correctly handles the response format

Customization Options

Your voice-to-translation app can be customized in several ways:

- Voice options: Experiment with different voices in the text-to-speech node

- Speech speed: Adjust the speed parameter for faster or slower audio output

- Additional languages: Support multiple language options in your interface

- Error handling: Add validation and error messages for a better user experience

- Timestamps: Use the segment timestamps to create synchronized subtitles

Limitations and Considerations

When building your voice-to-translation app, keep in mind:

- API costs: OpenAI's APIs have usage-based pricing, so monitor your usage

- File size limits: Very large audio files may encounter processing limits

- Language support: While Whisper supports many languages, accuracy varies

- Translation quality: Complex idioms or technical terms may not translate perfectly

For a complete video tutorial guide, please click below:

Conclusion

Congratulations! You've built a complete voice-to-translation application using BuildShip's workflow automation platform. This powerful tool combines OpenAI's speech recognition, translation, and text-to-speech capabilities into a seamless experience for your users.

The best part is that you've accomplished this without writing complex code or managing multiple API integrations manually. BuildShip handles the orchestration, allowing you to focus on creating a great user experience.

Ready to take your app further? Consider adding features like:

- Support for real-time recording instead of just file uploads

- Multiple language detection for automatic source language identification

- Custom vocabulary for domain-specific terminology

- Integration with other services in your tech stack

We can't wait to see what you build with these powerful tools!

What You'll Build

By the end of this tutorial, you'll have created an application that:

- Accepts audio file uploads in any language

- Transcribes speech to text using OpenAI's Whisper API

- Translates the transcribed text to a target language

- Converts the translated text back to speech

- Delivers all three outputs (original transcription, translated text, and translated audio) to your users

Let's get started!

Setting Up Your BuildShip Workflow

Step 1: Create a New Workflow and Define Inputs

Start by creating a new workflow in BuildShip. You'll need two input parameters:

- A file input named "voice file" for the audio upload

- A string input named "language" where users specify their desired translation language

Step 2: Add Speech-to-Text Transcription

1. Add the 'Whisper speech-to-text' node to your workflow

2. Configure the node:

- Set the input to the "voice file" from your workflow inputs

- Set response format to "verbose JSON"

- Enable "timestamps by segment" for detailed output

Before testing, make sure to add your OpenAI API key:

1. Click "Add Key"

2. Navigate to OpenAI's platform to create a secret key

3. Paste your key into BuildShip

Test the node by uploading a sample audio file. You should receive a transcription with timestamps for each segment.

Step 3: Translate the Transcribed Text

1. Add the 'OpenAI text generator' node

2. For instructions, enter: "Please translate the provided text into {{language}}"

3. For the prompt, select the transcription output from the Whisper node

Test this step by uploading an audio file and selecting a target language (like German or Spanish). You should see the translated text in your output.

Step 4: Convert Translated Text to Speech

1. Add the 'OpenAI text-to-speech' node

2. Set the input text to the output from the text generator node

3. Optionally customize the voice or speech speed

When you test this step, you'll receive a long base64-encoded string representing the audio file.

Step 5: Convert Base64 to a Playable Audio File

1. Add the BuildShip file storage upload base64 file node

2. Set the file content to the output from the text-to-speech node

3. For the filename, use JavaScript to generate a dynamic name: `Date.now() + ".mp3"`

Step 6: Configure the Final Output

Create a custom output with three components:

1. The original transcription

2. The translated text

3. The URL to the translated audio file

Test your complete workflow to ensure all three outputs are generated correctly.

Adding a Trigger and API Endpoint

To make your workflow accessible as an API:

1. Add a REST API file upload trigger

2. Map your inputs:

- Connect the file object from the trigger data to your "voice file" input

- Map the language parameter from the trigger body to your "language" input

3. Deploy your workflow changes

Creating a User Interface with Bolt.new

Now that your API is ready, you can create a simple interface:

1. Go to Bolt.new

2. Create a new app

3. Design an interface with:

- A file upload component for audio files

- A text input or dropdown for selecting the target language

- Display areas for showing the transcription, translation, and audio playback

To connect your Bolt app to your BuildShip workflow:

1. Go to the Usage tab in BuildShip

2. Copy the API usage code

3. Implement this code in your Bolt app to handle the API calls

Debugging and Testing

If you encounter issues with your integration:

1. Check the BuildShip logs to verify your workflow is processing correctly

2. Ensure your API calls from Bolt include the correct parameters

3. Verify that your Bolt app correctly handles the response format

Customization Options

Your voice-to-translation app can be customized in several ways:

- Voice options: Experiment with different voices in the text-to-speech node

- Speech speed: Adjust the speed parameter for faster or slower audio output

- Additional languages: Support multiple language options in your interface

- Error handling: Add validation and error messages for a better user experience

- Timestamps: Use the segment timestamps to create synchronized subtitles

Limitations and Considerations

When building your voice-to-translation app, keep in mind:

- API costs: OpenAI's APIs have usage-based pricing, so monitor your usage

- File size limits: Very large audio files may encounter processing limits

- Language support: While Whisper supports many languages, accuracy varies

- Translation quality: Complex idioms or technical terms may not translate perfectly

For a complete video tutorial guide, please click below:

Conclusion

Congratulations! You've built a complete voice-to-translation application using BuildShip's workflow automation platform. This powerful tool combines OpenAI's speech recognition, translation, and text-to-speech capabilities into a seamless experience for your users.

The best part is that you've accomplished this without writing complex code or managing multiple API integrations manually. BuildShip handles the orchestration, allowing you to focus on creating a great user experience.

Ready to take your app further? Consider adding features like:

- Support for real-time recording instead of just file uploads

- Multiple language detection for automatic source language identification

- Custom vocabulary for domain-specific terminology

- Integration with other services in your tech stack

We can't wait to see what you build with these powerful tools!

Start building your
BIGGEST ideas
in the *simplest* of ways.

Start building your
BIGGEST ideas
in the *simplest* of ways.

Start building your
BIGGEST ideas
in the *simplest* of ways.

You might also like