A secure, client-side web tool that helps you quickly generate multiple versions of a CSV file for different languages.
https://zachvg-vml.github.io/csv-language-generator/
This tool allows you to take a master CSV file (for example, a contact list or a translation file) and automatically duplicate it for a list of target languages.
- Takes an input CSV.
- Identifies the "Original" language from the first row of data.
- Creates a copy of the original file, renaming it to include the language (e.g.,
contacts_English.csv). - Generates new CSVs for every target language you list (e.g.,
contacts_Spanish.csv,contacts_Korean.csv), automatically updating the specific language column inside the file. - Zips everything into a single download package.
- 100% Client-Side: All processing happens in your browser. Your CSV data is never uploaded to any server, ensuring complete data privacy.
- No Backend Required: Runs entirely on HTML, CSS, and JavaScript.
- Open the
index.htmlfile in your browser (or visit the hosted page). - Upload Source CSV: Select your
.csvfile. It must have headers in the first row. - Language Column Header: Type the exact name of the column header that contains the language (default is
language_written). - Target Languages: Edit the list of languages you want to generate files for (one per line).
- Output Format: Choose to generate as a single or multiple files.
- Generate: Click the button. The tool will process the files and automatically download an
all_languages.csv(single file) orprocessed_languages.zip(multiple files) file.
Since this tool is a single HTML file, it is incredibly easy to host for free using GitHub Pages.
- Log in to GitHub.
- Click the + icon in the top right and select New repository.
- Name your repository (e.g.,
csv-language-generator). - Make sure it is set to Public.
- Click Create repository.
- On your computer, ensure you have the
index.htmlfile saved. - On the GitHub repository page, click the link that says uploading an existing file.
- Drag and drop your
index.htmlfile into the box. - In the "Commit changes" box at the bottom, type "Initial commit".
- Click Commit changes.
- Click on the Settings tab at the top of your repository.
- In the left sidebar, look for the Code and automation section and click on Pages.
- Under Build and deployment > Branch:
- Select
main(ormaster) from the dropdown menu. - Ensure the folder is set to
/(root).
- Click Save.
Wait about 1-2 minutes for GitHub to build your site. refresh the Pages settings page. You will see a banner at the top saying:
Your site is live at
https://<your-username>.github.io/csv-language-generator/
Click that link to use your tool!