Building an AI-Powered Translator Using Svelte, TypeScript, and GenAI: A Journey in Innovation

Nilay BarotNilay Barot
3 min read

Recently, I had the opportunity to work on a project, you can check it out that combined modern web technologies with the power of GenAI, resulting in a fully AI-powered translation application. This project was built using Svelte and TypeScript, and it leverages Gemini AI to handle translations — all without relying on any third-party APIs.

The Problem

Most translation apps depend heavily on third-party translation APIs, but what if we could bypass that entirely? Using GenAI prompting, I was able to retrieve all the supported languages in an array format. These languages were displayed in a dynamic combo box in the UI. The actual translation process also happened within GenAI itself, eliminating the need for any external API calls.

Why Svelte and TypeScript?

Choosing Svelte for this project was an easy decision, and here’s why:

- Reactivity: Svelte's reactivity model makes state management seamless. This helped in dynamically updating language selections and translation results.

- Lightweight: Svelte compiles down to pure JavaScript at build time, resulting in faster load times and smaller bundle sizes.

- Type Safety: With TypeScript, I ensured that the app had robust type-checking, making development smoother and reducing the risk of runtime errors.

Here is the example, how to effectively use prompting and fetch the data as required:

var response = await GetResponse(
          "Fetch me all the languages used for translation with comma separated. Just return me this information and nothing else"
        );

Using this approach, I created a user-friendly interface that allowed for real-time translation while showing the remaining character count. The language list fetched using GenAI was displayed in a combo box, making the UI highly interactive.


Leveraging GenAI for Creative Applications

This project opened my eyes to the wide array of possibilities that GenAI offers beyond just translation. We can leverage it to build all sorts of useful tools. Here are a few ideas:

- JSON to Class Converters: Prompting GenAI to generate C#, Java, or other language classes based on a given JSON structure.

- CSS to SCSS/SASS Converters: Automatically convert vanilla CSS into SCSS, SASS, or even Tailwind utility classes, making the switch between styling frameworks more seamless.

- Tailwind to Bootstrap Converter: If you’ve ever wanted to switch between CSS frameworks, imagine converting Tailwind classes into Bootstrap classes using the power of AI.

These types of GenAI-powered tools are not just cool experiments but could significantly enhance productivity for developers working across different stacks and languages.


This project really demonstrated how powerful and flexible Svelte and TypeScript are, and how GenAI can remove the need for external APIs. It also sparked new ideas for leveraging GenAI to create developer tools that save time and effort across various domains. There might be some issues while translating but this will depend on GenAI model used.

Feel free to check out the full source code for this AI-powered translator on my GitHub: Click here.


Let’s continue exploring how AI can drive innovation in web development!

If you’re building something cool with AI or web technologies, I’d love to hear about it!

#ArtificialIntelligence #GenAI #Svelte #TypeScript

0
Subscribe to my newsletter

Read articles from Nilay Barot directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Nilay Barot
Nilay Barot

As an experienced software engineer with a demonstrated history of working in the computer software industry, I'm skilled in Win Forms, WPF, ASP.NET Web forms, C++, C#, JavaScript, React and Go. I'm a software engineering professional with a Bachelor of Engineering - BE focused in Computer Engineering from Mahatma Gandhi Institute of Technology. Throughout my career, I've been passionate about building high-quality software that meets the needs of users, and I'm always striving to learn and grow as a developer. With a keen eye for detail and a commitment to excellence, I'm dedicated to delivering results that exceed expectations. In my free time, I enjoy reading books on technology, playing video games, and exploring new software development trends. Let's connect on LinkedIn and share our experiences as technology enthusiasts.