<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: kenny-fred</title>
    <description>The latest articles on DEV Community by kenny-fred (@kennyfred).</description>
    <link>https://dev.to/kennyfred</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4114004%2F916e9922-10df-4154-b99f-57353f7b19e1.jpg</url>
      <title>DEV Community: kenny-fred</title>
      <link>https://dev.to/kennyfred</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kennyfred"/>
    <language>en</language>
    <item>
      <title>Sayto</title>
      <dc:creator>kenny-fred</dc:creator>
      <pubDate>Mon, 07 Sep 2026 14:09:22 +0000</pubDate>
      <link>https://dev.to/kennyfred/sayto-3hn9</link>
      <guid>https://dev.to/kennyfred/sayto-3hn9</guid>
      <description>&lt;h2&gt;
  
  
  Why ?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fszdqh7qtimcve38084fj.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fszdqh7qtimcve38084fj.jpg" alt=" " width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I’ve always been interested in how we use language technologies, especially when translation becomes more than simply converting one language into another.&lt;/p&gt;

&lt;p&gt;So I started building &lt;strong&gt;Sayto&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Sayto is a web application that combines translation with features such as voice interaction, translation history, favourites, statistics and personalised suggestions.&lt;/p&gt;

&lt;p&gt;The goal isn't to build another Google Translate.&lt;/p&gt;

&lt;h2&gt;
  
  
  How it works
&lt;/h2&gt;

&lt;p&gt;The current version is built with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTML, CSS and JavaScript&lt;/li&gt;
&lt;li&gt;Node.js + Express&lt;/li&gt;
&lt;li&gt;LibreTranslate&lt;/li&gt;
&lt;li&gt;Docker&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The frontend communicates with a Node.js backend, which handles translation and other application features.&lt;/p&gt;

&lt;p&gt;For translation itself, Sayto uses a local LibreTranslate instance running in Docker.&lt;/p&gt;

&lt;p&gt;I've also experimented with browser speech recognition to make voice input possible.&lt;/p&gt;

&lt;h2&gt;
  
  
  The role of LibreTranslate
&lt;/h2&gt;

&lt;p&gt;LibreTranslate is currently at the heart of Sayto's translation system.&lt;/p&gt;

&lt;p&gt;I'm using it because it gives me a practical way to experiment with the application and focus on the user experience, voice interaction, personalisation and other features around translation.&lt;/p&gt;

&lt;p&gt;But I don't want Sayto to depend on LibreTranslate forever.&lt;/p&gt;

&lt;p&gt;One of my long-term goals is to develop my own translation model and eventually integrate it into Sayto.&lt;/p&gt;

&lt;p&gt;For me, LibreTranslate is therefore not the end goal. It's part of the foundation that allows me to build and experiment today while working towards something more ambitious.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where I want to take it
&lt;/h2&gt;

&lt;p&gt;I'm still exploring what Sayto could become.&lt;/p&gt;

&lt;p&gt;I'd like to investigate how translation, voice interaction and usage data could be combined to create a more personalised language experience.&lt;/p&gt;

&lt;p&gt;I'm also interested in getting feedback from developers, language-learning experts and anyone working with educational or language technologies.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you were building Sayto, what would you explore next?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I'd genuinely like to hear your ideas.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>javascript</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
