<?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: Y N</title>
    <description>The latest articles on DEV Community by Y N (@younesnoui).</description>
    <link>https://dev.to/younesnoui</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%2F3926961%2F8d66273c-73c6-47e8-96e6-34e2ddb25580.png</url>
      <title>DEV Community: Y N</title>
      <link>https://dev.to/younesnoui</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/younesnoui"/>
    <language>en</language>
    <item>
      <title>I built a community word board where one word holds many lives</title>
      <dc:creator>Y N</dc:creator>
      <pubDate>Tue, 12 May 2026 10:44:46 +0000</pubDate>
      <link>https://dev.to/younesnoui/i-built-a-community-word-board-where-one-word-holds-many-lives-46j1</link>
      <guid>https://dev.to/younesnoui/i-built-a-community-word-board-where-one-word-holds-many-lives-46j1</guid>
      <description>&lt;p&gt;What does "home" mean to you? What about "grief"? Or "money"?&lt;/p&gt;

&lt;p&gt;Everyone has a different answer. That's bort.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is it?
&lt;/h2&gt;

&lt;p&gt;bort is a word board. You pick a word — home, love, grief, money, silence, sorry — and leave what it means to you. One sentence. Anonymous if you want. Permanent.&lt;/p&gt;

&lt;p&gt;Your bort sits alongside everyone else's. Same word, completely different lives.&lt;/p&gt;

&lt;p&gt;Try it: &lt;a href="https://bort.llc" rel="noopener noreferrer"&gt;bort.llc&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The build
&lt;/h2&gt;

&lt;p&gt;Solo developer, based in Singapore. Built this while working full-time in banking.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stack:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Next.js 16 + TypeScript&lt;/li&gt;
&lt;li&gt;Tailwind v4&lt;/li&gt;
&lt;li&gt;Upstash Redis (Singapore region)&lt;/li&gt;
&lt;li&gt;Stripe ($1 to add your own word)&lt;/li&gt;
&lt;li&gt;Vercel&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Features:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;15 words, each holding dozens of personal stories&lt;/li&gt;
&lt;li&gt;6 colors to express mood&lt;/li&gt;
&lt;li&gt;9 languages — EN, FR, AR, ZH, MS, JA, KO, TH, ID&lt;/li&gt;
&lt;li&gt;AI content moderation — keeps it safe without killing honesty&lt;/li&gt;
&lt;li&gt;Photorealistic OG share cards — every bort looks beautiful when shared&lt;/li&gt;
&lt;li&gt;Admin panel for moderation and analytics&lt;/li&gt;
&lt;li&gt;PWA — installable on any device&lt;/li&gt;
&lt;li&gt;Fully responsive, RTL-aware for Arabic&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Interesting decisions
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Why only 15 words?&lt;/strong&gt; Constraints force depth. With unlimited words, people skim. With 15, you actually read what others wrote. The $1 price to add a new word means every addition is intentional.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why 9 languages?&lt;/strong&gt; A bort about "home" in Arabic hits differently than one in English. The word is the same. The life behind it isn't. Multilingual isn't localization — it's the feature.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why anonymous?&lt;/strong&gt; People write differently when no one's watching. The most honest borts come from people who didn't attach their name.&lt;/p&gt;




&lt;p&gt;Live at &lt;a href="https://bort.llc" rel="noopener noreferrer"&gt;bort.llc&lt;/a&gt;. Would love to hear — what word would you open first?&lt;/p&gt;

</description>
      <category>ai</category>
      <category>productivity</category>
      <category>javascript</category>
      <category>devops</category>
    </item>
    <item>
      <title>I shipped two full-stack apps solo — here's what I learned</title>
      <dc:creator>Y N</dc:creator>
      <pubDate>Tue, 12 May 2026 10:43:19 +0000</pubDate>
      <link>https://dev.to/younesnoui/i-shipped-two-full-stack-apps-solo-heres-what-i-learned-b5n</link>
      <guid>https://dev.to/younesnoui/i-shipped-two-full-stack-apps-solo-heres-what-i-learned-b5n</guid>
      <description>&lt;p&gt;I'm Younes, a project manager in banking by day, solo developer by night, based in Singapore. I just shipped two production apps:&lt;/p&gt;

&lt;h2&gt;
  
  
  B||T — Bless or Tease
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://blessortease.com" rel="noopener noreferrer"&gt;blessortease.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;An emotional ritual app where you send anonymous bless or tease signals to anyone in the world. 28 features built and deployed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stack:&lt;/strong&gt; Next.js 15, TypeScript, Upstash Redis, Vercel, Stripe, Resend, Web Push API&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Interesting builds:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Passwordless OTP auth — SHA-256 hashed codes, timing-safe comparison, multi-layer rate limiting&lt;/li&gt;
&lt;li&gt;Generative Sonic Identity — unique audio fingerprint per user using Web Audio API, driven by behavioral data&lt;/li&gt;
&lt;li&gt;2am Mode — CSS class toggle based on local time, shifts the entire app darker between midnight and 5am&lt;/li&gt;
&lt;li&gt;Weekly deterministic phrase generation — cached in Redis, all users see the same fractured "Unsent Signal"&lt;/li&gt;
&lt;li&gt;CSS co-location — refactored 8,600 lines of globals.css into 14 component files using a custom Node.js splitter script&lt;/li&gt;
&lt;li&gt;Symmetric echo chains — Redis counters that track exchanges between user pairs regardless of direction&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Also built:&lt;/strong&gt; peer-to-peer messaging, push notifications, 8 behavioral personality types, collectible Sound Drops, annual Wrapped cards, live global activity ticker, $1.99 gift signals via Stripe.&lt;/p&gt;

&lt;p&gt;Localized in 5 languages (EN/FR/AR/ZH/MS) with full RTL support for Arabic.&lt;/p&gt;

&lt;h2&gt;
  
  
  bort
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://bort.llc" rel="noopener noreferrer"&gt;bort.llc&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A community word board. Pick a word — home, grief, money — and leave what it means to you. 15 words, 9 languages, AI moderation, photorealistic OG share cards.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stack:&lt;/strong&gt; Next.js 16, TypeScript, Tailwind v4, Upstash Redis, Stripe, Vercel&lt;/p&gt;




&lt;p&gt;Both apps are live and taking payments. Built everything while working full-time.&lt;/p&gt;

&lt;p&gt;Happy to go deeper on any technical decisions. What would you want to hear more about?&lt;/p&gt;

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