<?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: Ashutosh Kumar Tiwari</title>
    <description>The latest articles on DEV Community by Ashutosh Kumar Tiwari (@ashutoshdebug).</description>
    <link>https://dev.to/ashutoshdebug</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3756692%2Ff44c5b25-6ea3-4d0e-985f-00b834f9490c.jpeg</url>
      <title>DEV Community: Ashutosh Kumar Tiwari</title>
      <link>https://dev.to/ashutoshdebug</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ashutoshdebug"/>
    <language>en</language>
    <item>
      <title>Yaplate - A Multilingual Bridge between Contributors and Maintainers</title>
      <dc:creator>Ashutosh Kumar Tiwari</dc:creator>
      <pubDate>Fri, 06 Feb 2026 14:07:04 +0000</pubDate>
      <link>https://dev.to/ashutoshdebug/yaplate-a-multilingual-bridge-between-contributors-and-maintainers-2a4i</link>
      <guid>https://dev.to/ashutoshdebug/yaplate-a-multilingual-bridge-between-contributors-and-maintainers-2a4i</guid>
      <description>&lt;p&gt;If you’ve ever maintained an open source repo, you’ve seen this classic horror story:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Someone opens an issue in a language you don’t speak&lt;/li&gt;
&lt;li&gt;The thread grows into a 47-comment monster&lt;/li&gt;
&lt;li&gt;Someone asks “any updates?” every 3 days&lt;/li&gt;
&lt;li&gt;You finally reply… 2 weeks later… with “sorry, busy”&lt;/li&gt;
&lt;li&gt;Everyone feels bad&lt;/li&gt;
&lt;li&gt;Nobody ships anything&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So I built &lt;strong&gt;&lt;a href="https://github.com/ashutoshdebug/yaplate.git" rel="noopener noreferrer"&gt;Yaplate&lt;/a&gt;&lt;/strong&gt; — a GitHub App bot that helps maintainers and contributors communicate better &lt;em&gt;across languages&lt;/em&gt;, &lt;em&gt;inside GitHub&lt;/em&gt;, without chaos and clutter.&lt;/p&gt;

&lt;p&gt;Think of it as:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Translate + Thread TL;DR + AI Reply Helper + A friendly project manager&lt;/strong&gt;&lt;br&gt;
but in your GitHub issues and PRs.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  What Even Is Yaplate?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Yaplate&lt;/strong&gt; is a GitHub App that works directly in:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Issues&lt;/li&gt;
&lt;li&gt;Pull requests&lt;/li&gt;
&lt;li&gt;Comments&lt;/li&gt;
&lt;li&gt;Review comments&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It helps you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Translate comments&lt;/li&gt;
&lt;li&gt;Summarize long threads&lt;/li&gt;
&lt;li&gt;Generate reply drafts&lt;/li&gt;
&lt;li&gt;Follow up with people automatically&lt;/li&gt;
&lt;li&gt;Gently mark dead threads as stale (optional)&lt;/li&gt;
&lt;li&gt;Auto-delete its own comments (so it doesn’t become &lt;em&gt;that bot&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;strong&gt;Want to see it live? Try it in the test repo → &lt;a href="https://github.com/ashutoshdebug/yaplate-test.git" rel="noopener noreferrer"&gt;Yaplate Test&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;For full demo, please visit &lt;a href="https://ashutoshdebug.github.io/yaplatebot" rel="noopener noreferrer"&gt;Yaplate website&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  How You Use It (Super Simple)
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;You don’t open dashboards.&lt;/li&gt;
&lt;li&gt;You don’t leave GitHub.&lt;/li&gt;
&lt;li&gt;You just mention the bot like a summoning ritual.
&lt;em&gt;(Tip: quote the comment you want to translate or reply to.)&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Summarize a Thread
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@yaplate summarize
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Want the summary in another language?
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@yaplate summarize in &amp;lt;language_code&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  Translate a Comment
&lt;/h3&gt;

&lt;p&gt;Quote the comment you want translated and run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@yaplate translate this to &amp;lt;language_code&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  Generate a Reply Draft
&lt;/h3&gt;

&lt;p&gt;This is the &lt;em&gt;maintainer lifesaver&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Quote the comment and ask:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@yaplate reply this in &amp;lt;language_code&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Boom: a reply draft in the requested language.&lt;/p&gt;




&lt;h3&gt;
  
  
  Example:
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;A contributor writes a bug report in Japanese.&lt;br&gt;
You run &lt;code&gt;@yaplate translate in en&lt;/code&gt; and &lt;code&gt;@yaplate reply in ja&lt;/code&gt;.&lt;br&gt;
You respond politely in 20 seconds without leaving GitHub.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Yaplate Is Clean (It Deletes Its Own Comments)
&lt;/h2&gt;

&lt;p&gt;Bots have a reputation for turning issue threads into… well… bot threads.&lt;/p&gt;

&lt;p&gt;So Yaplate includes this nice little feature:&lt;/p&gt;

&lt;h3&gt;
  
  
  Auto-delete bot comments
&lt;/h3&gt;

&lt;p&gt;If you delete the comment that triggered Yaplate, it deletes its own response too.&lt;/p&gt;

&lt;p&gt;It’s like:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“No worries, I’ll see myself out.”&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Follow-Up Reminders (Optional, But Glorious)
&lt;/h2&gt;

&lt;p&gt;Let’s talk about the real villain of open source:&lt;/p&gt;

&lt;h3&gt;
  
  
  The “I’ll update soon” ghosting phenomenon
&lt;/h3&gt;

&lt;p&gt;Yaplate can automatically follow up when:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;An issue is assigned to someone&lt;/li&gt;
&lt;li&gt;A PR is opened (optional)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It starts a timer, then posts a reminder if nothing changes.&lt;/p&gt;

&lt;p&gt;And here’s the best part:&lt;/p&gt;

&lt;h3&gt;
  
  
  Follow-ups are posted in the author’s language
&lt;/h3&gt;

&lt;p&gt;Yaplate detects the language of the thread and replies in that language when possible.&lt;/p&gt;




&lt;h2&gt;
  
  
  The “I’m Blocked” Safety Valve
&lt;/h2&gt;

&lt;p&gt;Yaplate is not a nagging machine.&lt;/p&gt;

&lt;p&gt;If someone says:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;“I’m blocked”&lt;/li&gt;
&lt;li&gt;“Waiting for maintainer approval”&lt;/li&gt;
&lt;li&gt;“Need review before proceeding”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Yaplate will:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;stop escalation&lt;/li&gt;
&lt;li&gt;request maintainer attention&lt;/li&gt;
&lt;li&gt;avoid stale marking&lt;/li&gt;
&lt;li&gt;avoid further reminders&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Because nobody wants a bot telling a contributor to “update soon” while they’re waiting on &lt;em&gt;you&lt;/em&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  First-Time Contributor Greetings
&lt;/h2&gt;

&lt;p&gt;Yaplate will greet contributors when they open their &lt;strong&gt;first issue or PR&lt;/strong&gt; in your repo.&lt;/p&gt;

&lt;p&gt;Because small things like this matter.&lt;/p&gt;

&lt;p&gt;Open source doesn’t have to feel cold.&lt;/p&gt;




&lt;h2&gt;
  
  
  Yaplate has manners
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Bots are loud. Yaplate has manners.&lt;/li&gt;
&lt;li&gt;It helps you ship, not babysit threads.&lt;/li&gt;
&lt;li&gt;Less guilt. More merges.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Language Codes
&lt;/h2&gt;

&lt;p&gt;Yaplate uses standard ISO 639-1 codes, like:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Code&lt;/th&gt;
&lt;th&gt;Language&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;en&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;English&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;hi&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Hindi&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;fr&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;French&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ja&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Japanese&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;zh&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Chinese&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  What It’s Built With
&lt;/h2&gt;

&lt;p&gt;Under the hood, Yaplate is powered by:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;FastAPI&lt;/strong&gt; (webhook server)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Redis&lt;/strong&gt; (state + scheduling)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lingo.dev API&lt;/strong&gt; (translation)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gemini API&lt;/strong&gt; (summaries, reply drafts, semantic checks)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub App API&lt;/strong&gt; (issue/PR integration)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Special note:&lt;/strong&gt; Yaplate is powered by &lt;a href="https://lingo.dev/" rel="noopener noreferrer"&gt;Lingo.dev&lt;/a&gt;, an AI-powered localization engine that helps you localize your projects and workflows.&lt;/p&gt;

&lt;p&gt;It’s lightweight, fast, and designed to be self-hosted.&lt;/p&gt;




&lt;h2&gt;
  
  
  What’s Coming Next
&lt;/h2&gt;

&lt;p&gt;Yaplate’s roadmap includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Better handling of language drift in long threads&lt;/li&gt;
&lt;li&gt;Per-repo and per-org configuration&lt;/li&gt;
&lt;li&gt;Disable bot for selected issues/PRs&lt;/li&gt;
&lt;li&gt;Cached responses when APIs are down&lt;/li&gt;
&lt;li&gt;Better permission minimization&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Why Yaplate Exists
&lt;/h2&gt;

&lt;p&gt;Open source is amazing.&lt;/p&gt;

&lt;p&gt;But sometimes it feels like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Maintainers are overwhelmed&lt;/li&gt;
&lt;li&gt;Contributors are confused&lt;/li&gt;
&lt;li&gt;Language becomes an accidental gatekeeper&lt;/li&gt;
&lt;li&gt;Issues go stale for the wrong reasons&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Yaplate is my attempt to fix that.&lt;/p&gt;

&lt;p&gt;Not by replacing humans, but by making human collaboration &lt;em&gt;easier&lt;/em&gt;.&lt;/p&gt;




&lt;p&gt;If you maintain a repo with global contributors, Yaplate might genuinely save you time — and make your community feel more welcoming.&lt;/p&gt;

&lt;p&gt;And honestly?&lt;/p&gt;

&lt;p&gt;That’s a win worth automating.&lt;/p&gt;

</description>
      <category>github</category>
      <category>apps</category>
      <category>githubapps</category>
      <category>lingodotdev</category>
    </item>
  </channel>
</rss>
