<?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: stma</title>
    <description>The latest articles on DEV Community by stma (@stma).</description>
    <link>https://dev.to/stma</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%2F288620%2F4d281099-55e2-438b-acbb-ba57575f888f.jpeg</url>
      <title>DEV Community: stma</title>
      <link>https://dev.to/stma</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/stma"/>
    <language>en</language>
    <item>
      <title>My stumbles to my presentation page</title>
      <dc:creator>stma</dc:creator>
      <pubDate>Mon, 02 Feb 2026 01:22:03 +0000</pubDate>
      <link>https://dev.to/stma/my-stumbles-to-my-presentation-page-31ii</link>
      <guid>https://dev.to/stma/my-stumbles-to-my-presentation-page-31ii</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/new-year-new-you-google-ai-2025-12-31"&gt;New Year, New You Portfolio Challenge Presented by Google AI&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  About Me
&lt;/h2&gt;

&lt;p&gt;Hi there! I'm Mátyás Steiner—or at least, the digital, AI-powered clone of him. In the real world, I'm a Senior Full Stack Developer and Lecturer with over 15 years of experience (and 3 dogs!). I love teaching, building scalable architectures, and occasionally pretending I'm in a sci-fi movie.&lt;/p&gt;

&lt;p&gt;I built this portfolio to bridge the gap between a static resume and a real conversation. Instead of just reading about my skills, you can ask me about them! I wanted to express my passion for modern web tech, security, and the kind of "magic" that happens when you combine code with creativity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Portfolio
&lt;/h2&gt;

&lt;p&gt;

&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
      &lt;div class="c-embed__body flex items-center justify-between"&gt;
        &lt;a href="https://stma.startmate.eu" rel="noopener noreferrer" class="c-link fw-bold flex items-center"&gt;
          &lt;span class="mr-2"&gt;stma.startmate.eu&lt;/span&gt;
          

        &lt;/a&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;




&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;p&gt;I decided to go full "future-tech" for this one. Here's the recipe:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;The Brains:&lt;/strong&gt; I'm using the &lt;strong&gt;Google GenAI SDK&lt;/strong&gt; with &lt;code&gt;gemini-3-pro-preview&lt;/code&gt; (yes, aiming for the stars!) to handle the conversation. It's prompted with my actual professional bio, so it answers like me—just with slightly faster typing speed and more accurate grammar.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;The Beauty:&lt;/strong&gt; For the visuals, I'm calling &lt;code&gt;gemini-2.5-flash-image&lt;/code&gt;. It reads the context of our chat and generates a Studio Ghibli-style watercolor background &lt;em&gt;in real-time&lt;/em&gt;. If we talk about "Java", you might get a coffee shop; if we talk about "Cloud", well... expect some fluffy cumulus.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;The Skeleton:&lt;/strong&gt; The frontend is &lt;strong&gt;React&lt;/strong&gt; (bundled with Vite), styled with &lt;strong&gt;Tailwind CSS&lt;/strong&gt; for that crisp "system online" terminal aesthetic.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;The Muscle:&lt;/strong&gt; The backend is &lt;strong&gt;Hono&lt;/strong&gt; running on Node.js. It's lightweight, fast, and handles the API requests like a champ.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;The Shield:&lt;/strong&gt; I integrated &lt;strong&gt;Cloudflare Turnstile&lt;/strong&gt; to keep the bad bots away, because nobody likes spam. Also, I added a few rate limiting headers to make sure the server doesn't get overloaded. And of course, input validation and sanitization. &lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;The Cloud:&lt;/strong&gt; Deployed on &lt;strong&gt;Google Cloud Run&lt;/strong&gt;, because serverless is the way.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I used &lt;strong&gt;Google AI Studio&lt;/strong&gt; to fine-tune the initial system instructions and the &lt;strong&gt;Gemini CLI&lt;/strong&gt; to help scaffold and debug the project (it even helped me fix my environment variables!).&lt;/p&gt;

&lt;h2&gt;
  
  
  What I'm Most Proud Of
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;The "Mood Ring" Backgrounds:&lt;/strong&gt; Seriously, try asking about "sailing" or "snowboarding". The fact that the background adapts to the conversation flow makes it feel alive.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Security First:&lt;/strong&gt; I didn't just slap an API key in the frontend. I built a proper backend with rate limiting and bot protection. Safety is sexy.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;The Vibe:&lt;/strong&gt; I managed to capture my "professional but geeky" personality. It's not just a chatbot; it's a &lt;em&gt;character&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Cloud Run Deployment:&lt;/strong&gt; Getting the Docker container optimized and running smoothly in the cloud was a satisfying win.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>googleaichallenge</category>
      <category>portfolio</category>
      <category>gemini</category>
    </item>
    <item>
      <title>I think these are valid reasons! I think the same but many times I told it to someone it was snatched from the table by TS hype.</title>
      <dc:creator>stma</dc:creator>
      <pubDate>Mon, 16 Dec 2024 22:54:55 +0000</pubDate>
      <link>https://dev.to/stma/i-think-these-are-valid-reasons-i-think-the-same-but-many-times-i-told-it-to-someone-it-was-1lkf</link>
      <guid>https://dev.to/stma/i-think-these-are-valid-reasons-i-think-the-same-but-many-times-i-told-it-to-someone-it-was-1lkf</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/pengeszikra" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F439972%2F8830d2e7-92bf-4d2b-9f73-855a4d0a40a7.jpeg" alt="pengeszikra"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/pengeszikra/jsdoc-evangelism-1eij" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;JSDoc Evangelism&lt;/h2&gt;
      &lt;h3&gt;Peter Vivo ・ Oct 27&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#typescript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#jsdoc&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>javascript</category>
      <category>typescript</category>
    </item>
  </channel>
</rss>
