<?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: SaynedBread</title>
    <description>The latest articles on DEV Community by SaynedBread (@saynedbread).</description>
    <link>https://dev.to/saynedbread</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%2F1184911%2F8cb30995-5b95-40ae-921d-6c1497ac3f44.jpg</url>
      <title>DEV Community: SaynedBread</title>
      <link>https://dev.to/saynedbread</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/saynedbread"/>
    <language>en</language>
    <item>
      <title>We Built a Platform That Respects You</title>
      <dc:creator>SaynedBread</dc:creator>
      <pubDate>Sat, 02 Aug 2025 03:11:01 +0000</pubDate>
      <link>https://dev.to/saynedbread/we-built-a-platform-that-respects-you-2n3j</link>
      <guid>https://dev.to/saynedbread/we-built-a-platform-that-respects-you-2n3j</guid>
      <description>&lt;p&gt;Three weeks ago, me and a few friends set out to build something weirdly ambitious: a social media platform that doesn't sell your soul: &lt;strong&gt;Node Social&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;No ads. No selling your data to the highest bidder. Just humans, talking.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why we're doing this?
&lt;/h2&gt;

&lt;p&gt;We've all felt it. Social media today is loud, messy, and designed to keep you scrolling, not thinking. So we decided to build something that puts people before profits.&lt;/p&gt;

&lt;p&gt;Our platform is built on two core principles:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Privacy: no tracking, no sneaky cookies,&lt;/li&gt;
&lt;li&gt;and Freedom: as long as you're not a bigot or breaking the law, you're welcome.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The tech stuff (for the curious)
&lt;/h2&gt;

&lt;p&gt;We built the backend in &lt;strong&gt;Go&lt;/strong&gt; with the &lt;strong&gt;Gin&lt;/strong&gt; framework. For the database, we use &lt;strong&gt;PostgreSQL&lt;/strong&gt;, because ACID is amazing. We have a fully working auto-deploy-to-VPS CI pipeline with linting and error checking. We use &lt;strong&gt;Docker&lt;/strong&gt; for dev testing. The frontend is written in &lt;strong&gt;TypeScript&lt;/strong&gt; with the &lt;strong&gt;React&lt;/strong&gt; framework. And it's all self-hosted. We also use Redis for caching data from the database.&lt;/p&gt;

&lt;p&gt;And the API is fully documented at &lt;a href="https://docs.nodesocial.org" rel="noopener noreferrer"&gt;docs.nodesocial.org&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it yourself
&lt;/h2&gt;

&lt;p&gt;You can check out the platform at &lt;a href="https://nodesocial.org" rel="noopener noreferrer"&gt;nodesocial.org&lt;/a&gt;. It's still very experimental, but (most) important features already work. Go ahead and sign up, post something, and break stuff, gently, of course.&lt;/p&gt;

&lt;h2&gt;
  
  
  Want to contribute?
&lt;/h2&gt;

&lt;p&gt;Though the platform is not open-source, anyone who is passionate is welcome to contribute.&lt;/p&gt;

&lt;p&gt;We're building this in our free time and we're not VC-funded. So no, we sadly can't pay contributors, yet.&lt;/p&gt;

&lt;p&gt;But if you're:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a dev who believes in digital freedom&lt;/li&gt;
&lt;li&gt;a designer with a hate for boring UIs&lt;/li&gt;
&lt;li&gt;a community builder who wants to shape something new
...then come hang out with us.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We'd love your help. We'd love your ideas. We'll credit you properly, listen to you, and treat you like a human,  not like another object for monetization.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Join our Discord server at: &lt;a href="https://discord.gg/nkt6GScq" rel="noopener noreferrer"&gt;https://discord.gg/nkt6GScq&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Support us (if you want to)
&lt;/h2&gt;

&lt;p&gt;If you like what we're doing and want to buy us a coffee, or several, here's our Ko-Fi: &lt;a href="https://ko-fi.com/saynedbread" rel="noopener noreferrer"&gt;https://ko-fi.com/saynedbread&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Totally optional. But very appreciated.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>webdev</category>
      <category>typescript</category>
      <category>startup</category>
    </item>
    <item>
      <title>Dev Blog #1: How We Started Making a Game (Picking a Game Engine)</title>
      <dc:creator>SaynedBread</dc:creator>
      <pubDate>Wed, 21 May 2025 23:04:52 +0000</pubDate>
      <link>https://dev.to/saynedbread/dev-blog-1-how-we-started-making-a-game-picking-a-game-engine-2l3n</link>
      <guid>https://dev.to/saynedbread/dev-blog-1-how-we-started-making-a-game-picking-a-game-engine-2l3n</guid>
      <description>&lt;p&gt;It’s hard to start planning and developing a game alone, or with others, if you’ve never done it before. So, I created this blog to show you how we’ve done it; at least the choosing a game engine part.&lt;/p&gt;

&lt;h2&gt;
  
  
  Deciding On a Game Engine
&lt;/h2&gt;

&lt;p&gt;The actual hardest part was deciding on a game engine. There are so many options, which of most suck, to say the least.&lt;/p&gt;

&lt;p&gt;To see which game engine we’d like the most, we picked out four game engines, which we’ve never used before, and made a working prototype in each. These four game engines were: Godot, MonoGame, LÖVE (love2d), and HaxeFlixel.&lt;/p&gt;

&lt;p&gt;Neither me or my fellow developer likes UI-oriented workflows. They’re bloated, hard to learn, and everything is better if it’s only done with code. Wouldn’t you agree? (That's one of the biggest reasons to why we dropped Godot.)&lt;/p&gt;

&lt;p&gt;Anyways, our criteria for the prototype were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;2D movement and movement based animations,&lt;/li&gt;
&lt;li&gt;tile map loading,&lt;/li&gt;
&lt;li&gt;a simple main menu,&lt;/li&gt;
&lt;li&gt;background music and sound effects playing,&lt;/li&gt;
&lt;li&gt;a simple dialog system.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Simple, right? Yes! It is simple! But the process of making this prototype in each game engine was vastly different. Note that we’ve tried out each game engine in the span of three days, so we didn’t have enough time to learn everything about each game engine.&lt;/p&gt;

&lt;p&gt;The first game engine we made the prototype in was Godot. We were off to a great start, except that, that statement is completely false. The UI is very, very confusing. Took 2 hours of my so, so precious time for a simple prototype like that. The results were great, but it was just not worth the hassle. Skip.&lt;/p&gt;

&lt;p&gt;The next game engine was MonoGame. It was... very unpleasant to do anything in MonoGame. It took a whopping 1 hour to make the prototype work. The product was great, and it felt a lot simpler to make it than in Godot; I was still very disappointed. The final results: skip.&lt;/p&gt;

&lt;p&gt;The next game engine, and my personal favorite, was: LÖVE (love2d). Lua for game development? Hell yeah! All in all, it took 1 hour to make the prototype and holy was it very satisfying to write the code for it. If the next option didn't exist, we would've picked LÖVE. The final results: skip... but it was great!&lt;/p&gt;

&lt;p&gt;The final game engine, and our final choice, was: HaxeFlixel. In all honesty, I've never heard of Haxe before this, but gosh darn it, it was such a great experience to do all of this stuff in HaxeFlixel. I immediately fell in love with Haxe's syntax and ease-of-use. The development workflow is simply amazing! But I don't really know how to explain it; you'd have to try for yourself to really see how great it is. Anyways, it took 1 hours to make the prototype. The final results: ABSOLUTELY LOVELY.&lt;/p&gt;

&lt;p&gt;So yeah, our choice fell on HaxeFlixel. Even if you're not interested in serious game development, using HaxeFlixel is such a fun experience, that it deserves a try from everyone.&lt;/p&gt;

&lt;p&gt;See y'all in the next dev blog post!&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>learning</category>
      <category>gamedev</category>
      <category>developer</category>
    </item>
  </channel>
</rss>
