<?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>Forem: Eric Tron</title>
    <description>The latest articles on Forem by Eric Tron (@eric_code).</description>
    <link>https://forem.com/eric_code</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%2F2903976%2F5fbe977e-2377-4e20-8042-74503cfe3455.jpg</url>
      <title>Forem: Eric Tron</title>
      <link>https://forem.com/eric_code</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/eric_code"/>
    <language>en</language>
    <item>
      <title>I run 3 side projects (and a TeamSpeak) on a single €10/month server</title>
      <dc:creator>Eric Tron</dc:creator>
      <pubDate>Mon, 02 Mar 2026 13:08:27 +0000</pubDate>
      <link>https://forem.com/eric_code/i-run-3-side-projects-and-a-teamspeak-on-a-single-eu10month-server-2e4m</link>
      <guid>https://forem.com/eric_code/i-run-3-side-projects-and-a-teamspeak-on-a-single-eu10month-server-2e4m</guid>
      <description>&lt;p&gt;I'm not spending €50/month on hosting for projects that might never take off. So I put all three on a single €10/month server.&lt;br&gt;
There's also a TeamSpeak server running on it. With Discord now asking for face scans and leaking government IDs, some of us are going back to basics.&lt;/p&gt;
&lt;h2&gt;
  
  
  What's running on it
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://myowly.com" rel="noopener noreferrer"&gt;MyOwly&lt;/a&gt; : a free app that sends you reminders for your subscriptions, free trials, and anything with a due date. Never miss a renewal again.&lt;br&gt;
  &lt;em&gt;React, Spring Boot, PostgreSQL&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://esporthub.io" rel="noopener noreferrer"&gt;EsportHub.io&lt;/a&gt; : an esports platform available as a web app and an Android app.&lt;br&gt;
  &lt;em&gt;React, Spring Boot, MongoDB&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://productcompanies.eu" rel="noopener noreferrer"&gt;ProductCompanies&lt;/a&gt; : a search engine for European companies that build cool products.&lt;br&gt;
  &lt;em&gt;React, Node.js, MongoDB&lt;/em&gt;&lt;/p&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.amazonaws.com%2Fuploads%2Farticles%2Fytk6slal770ww5b3feb8.png" 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.amazonaws.com%2Fuploads%2Farticles%2Fytk6slal770ww5b3feb8.png" alt=" " width="800" height="532"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  The server
&lt;/h2&gt;

&lt;p&gt;It's the cheapest dedicated server on OVH's Kimsufi platform. €10/month, and here's what you get:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPU: Intel Xeon E5-1620v2 — 4 cores / 8 threads @ 3.7 GHz&lt;/li&gt;
&lt;li&gt;RAM: 32 GB ECC&lt;/li&gt;
&lt;li&gt;Storage: 1 × 120 GB SSD&lt;/li&gt;
&lt;li&gt;Bandwidth: 500 Mbit/s&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It's not a fancy cloud instance. It's a real dedicated machine sitting in a datacenter, and it's more than enough.&lt;/p&gt;
&lt;h2&gt;
  
  
  How it all fits together
&lt;/h2&gt;

&lt;p&gt;The setup is dead simple. One nginx instance handles everything, it receives all the traffic and routes it to the right app based on the domain name.                                                    &lt;/p&gt;

&lt;p&gt;Each backend runs on its own port:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  Internet
     │
     ▼
    nginx (:443)
     ├── myowly.com        → React static + Spring Boot (:8086) + PostgreSQL
     ├── esporthub.io       → React static + Spring Boot (:8080) + MongoDB
     └── productcompanies.eu → React static + Node.js (:3001) + MongoDB
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The frontends? Just static files. React builds into a bunch of HTML, CSS, and JS that nginx serves directly. No Node server needed for that.&lt;/p&gt;

&lt;p&gt;SSL is handled by Let's Encrypt, free HTTPS on all domains, auto-renewed.&lt;/p&gt;

&lt;p&gt;And each backend is managed by systemd. If something crashes (it hasn't in 78 days, but still), it restarts automatically. No Docker, no Kubernetes, no orchestration. Just good old Linux doing its&lt;br&gt;
  thing.&lt;/p&gt;

&lt;h2&gt;
  
  
  The real numbers
&lt;/h2&gt;

&lt;p&gt;With all three projects running, the server barely notices. CPU usage sits at 1%. I'm using 3 GB of RAM out of 32, that's 28 GB doing absolutely nothing. Disk? 14 GB out of 120. &lt;/p&gt;

&lt;p&gt;Each Spring Boot app takes around 500 MB of RAM, the Node.js one takes 110 MB, and the databases combined use about 300 MB. I could realistically throw 15 more apps on this thing before it starts to&lt;br&gt;
  sweat.&lt;/p&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.amazonaws.com%2Fuploads%2Farticles%2Fubaw80tn15bmerd9qlf8.png" 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.amazonaws.com%2Fuploads%2Farticles%2Fubaw80tn15bmerd9qlf8.png" alt=" " width="800" height="67"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Why not the cloud?
&lt;/h2&gt;

&lt;p&gt;Every time I look at cloud platforms, I see the same thing: one service for the backend, another for the frontend, a managed database on the side, then you spend an hour wiring everything together. And&lt;br&gt;
  at the end of the month, you're paying €20-50 per project for something that has three users.                                                                                                             &lt;/p&gt;

&lt;p&gt;I'm building a product, not scaling for 100,000 users. These are side projects. They might take off, they might not. I'd rather spend my time shipping features than configuring cloud dashboards.&lt;/p&gt;

&lt;p&gt;And if one of them actually blows up? I'll move it to its own dedicated server on Kimsufi, OVH, or Scaleway, European providers first, set up Docker and Kubernetes, and scale horizontally. But until that day comes, a single €10/month box does the job just fine.&lt;/p&gt;

&lt;p&gt;There's another benefit I didn't expect: you actually learn how things work. Setting up nginx, configuring SSL, writing systemd services, debugging logs over SSH, none of that happens when you click&lt;br&gt;
  "Deploy" on Vercel. Managing your own server makes you a better developer, and that knowledge doesn't go away when a platform changes its pricing.  &lt;/p&gt;

&lt;h2&gt;
  
  
  Wrapping Up
&lt;/h2&gt;

&lt;p&gt;Three full-stack apps, two databases, a TeamSpeak container running in Docker, and the server is still 97% idle. All of that for €10/month.                                                               &lt;/p&gt;

&lt;p&gt;You don't need Kubernetes. You don't need a managed database at €30/month. You don't need five different cloud services to run a side project. I use a dedicated server, but even a €5/month VPS would handle most side projects better than a patchwork of cloud services.                                                                                                                                      &lt;/p&gt;

&lt;p&gt;Start cheap, ship fast, scale when you need to.&lt;/p&gt;

&lt;p&gt;Thanks for reading. If you have questions about the setup or want to roast my architecture, the comments are open.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>beginners</category>
      <category>java</category>
    </item>
    <item>
      <title>Why I Chose a Monolithic Architecture for My Side Project</title>
      <dc:creator>Eric Tron</dc:creator>
      <pubDate>Mon, 03 Mar 2025 14:20:21 +0000</pubDate>
      <link>https://forem.com/eric_code/why-i-chose-a-monolithic-architecture-for-my-side-project-3042</link>
      <guid>https://forem.com/eric_code/why-i-chose-a-monolithic-architecture-for-my-side-project-3042</guid>
      <description>&lt;h2&gt;
  
  
  Beyond Outsized Ambitions
&lt;/h2&gt;

&lt;p&gt;When I started working on &lt;a href="https://mockfast.io" rel="noopener noreferrer"&gt;MockFast&lt;/a&gt;, I had no intention of creating the next Silicon Valley unicorn. It was just me being fed up with reinventing the wheel for every new project. Something I was tinkering with in the evenings after work, or for a few hours on weekends when my girlfriend would leave me alone for a bit.&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/eric_code" 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%2F2903976%2F5fbe977e-2377-4e20-8042-74503cfe3455.jpg" alt="eric_code"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/eric_code/my-journey-creating-mockfastio-a-free-api-mocking-tool-1291" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;My journey creating mockfast.io - a free API mocking tool&lt;/h2&gt;
      &lt;h3&gt;Eric Tron ・ Feb 28&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#programming&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#api&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;Between a job that already takes 40-50 hours per week, the usual chores, and wanting to actually have some kind of social life, you gotta be realistic about what you can accomplish. I had maybe 5-10 hours a week to dedicate to this personal project. Under these conditions, you really need to focus on the essentials.&lt;/p&gt;

&lt;p&gt;After some times of development (with plenty of breaks, let's be honest), the main lesson I learned: &lt;strong&gt;the difference between a finished project and an abandoned one is often just staying pragmatic&lt;/strong&gt;. Nobody has ever used a perfectly designed project that was never completed.&lt;/p&gt;

&lt;p&gt;Seriously, we all start with big dreams, but we need to come back down to earth. If you have 100 users after a year, that's already an incredible success for a side project. So why bother with an architecture that could handle 100,000 users if it means you'll never actually finish?&lt;/p&gt;

&lt;p&gt;Don't get me wrong - microservices are awesome even if you don't have tons of users. They're fantastic if your primary goal is learning the ins and outs of modern distributed architectures. I've got colleagues who've built incredibly complex systems just to learn how Kubernetes orchestration works or to master event-driven architecture patterns. Thats a perfectly valid reason to go that route. But for me, this project wasn't primarily about learning new tech - it was about solving a real problem and actually shipping something useful.&lt;/p&gt;

&lt;h2&gt;
  
  
  Simplicity as a Deliberate Strategy
&lt;/h2&gt;

&lt;p&gt;My goals were pretty straightforward:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Solve a real problem that was frustrating me daily&lt;/li&gt;
&lt;li&gt;Learn some interesting things and actually enjoy the building process&lt;/li&gt;
&lt;li&gt;Create something useful without burning myself out&lt;/li&gt;
&lt;li&gt;Avoid unecessary complexity that would just slow me down&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A monolithic architecture let me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Build quickly without drowning in infrastructure setup&lt;/li&gt;
&lt;li&gt;Focus on solving the actual problem instead of architecting endlessly&lt;/li&gt;
&lt;li&gt;Reduce the mental overhead of tracking too many components&lt;/li&gt;
&lt;li&gt;Keep the project enjoyable and doable (because who needs more stress?)&lt;/li&gt;
&lt;li&gt;Iterate faster and see actual results rather than just planning&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Simplicity wasn't a comprimise – it was my strategy for making measurable progress with the limited time and energy I had.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Hidden Burden of Premature Optimization
&lt;/h2&gt;

&lt;p&gt;Microservices sound impressive in tech talks, but for a side project, they're often just adding complexity that you don't need. Breaking down an application into microservices requires:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Significant time upfront just designing everything&lt;/li&gt;
&lt;li&gt;Setting up complex infastructure that will cause headaches at midnight&lt;/li&gt;
&lt;li&gt;Mental energy that could be used for more important aspects&lt;/li&gt;
&lt;li&gt;Time taken away from building features users might actually care about&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I've seen several promising side projects (including some of my own) get stuck in a swamp of permature optimizations, only to be abandoned before they ever reached users. &lt;strong&gt;Even the most elegant architecture is useless if your project never sees the light of day&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;When you're coding in those limited evening hours after work, every hour is precious. I'd rather spend my energy building something that solves problems than configuring systems that nobody asked for.&lt;/p&gt;

&lt;h2&gt;
  
  
  Resources Are Limited (Especially Time)
&lt;/h2&gt;

&lt;p&gt;Let's be realistic: side projects happen in those small slices of time you find between other committments. Every hour spent:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Dealing with complex architectures and getting lost in configuration files&lt;/li&gt;
&lt;li&gt;Trying to make distributed systems work together properly&lt;/li&gt;
&lt;li&gt;Troubleshooting communication issues between services&lt;/li&gt;
&lt;li&gt;Researching solutions to problems that only exist because of your architecture choice&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;is an hour not spent:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Building features that make your project actually useful&lt;/li&gt;
&lt;li&gt;Solving interesting technical challenges that matter to your project&lt;/li&gt;
&lt;li&gt;Using and enjoying your own creation (which is a big part of motivation)&lt;/li&gt;
&lt;li&gt;Getting feedback to see if you're even on the right track&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Time is the scarcest resource in a side project – and never seems to be enough of it. I've never once found myself with too much free time for my side projects, and I doubt you have either.&lt;/p&gt;

&lt;h2&gt;
  
  
  User Experience Trumps Technical Excellence
&lt;/h2&gt;

&lt;p&gt;An interesting thing I discovered while building &lt;a href="https://mockfast.io" rel="noopener noreferrer"&gt;MockFast&lt;/a&gt; – not a single user has ever asked me about my architecture decisions. No one really cares if I'm using microservices, a monolith, or any other technical approach. What actually matters to them:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Does the service work reliably when they need it?&lt;/li&gt;
&lt;li&gt;How quickly can issues be fixed when something goes wrong?&lt;/li&gt;
&lt;li&gt;Can they figure out how to use it without extensive documentation?&lt;/li&gt;
&lt;li&gt;Does it actually improve their workflow in some meaningful way?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A reliable monolith that works consistantly is far more valuable than a perfectly designed distributed system that's perpetually "almost ready" or breaks in unpredictable ways.&lt;/p&gt;

&lt;h2&gt;
  
  
  When Will Microservices Make Sense?
&lt;/h2&gt;

&lt;p&gt;I'm not saying microservices are wrong or that I'll never consider them. The transition isn't off the table – it's just postponed until it actually becomes necessary. I'll consider breaking things up when:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The project has actual users who depend on it&lt;/li&gt;
&lt;li&gt;Certain components need to scale independently because of usage patterns&lt;/li&gt;
&lt;li&gt;Performance becomes a genuine problem rather than a theoritical concern&lt;/li&gt;
&lt;li&gt;I have more consistent time to invest in development&lt;/li&gt;
&lt;li&gt;The benefits clearly outweigh the additional complexity of managing multiple services&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The key is being honest about whether your addressing real problems or just following tech trends. Most side projects are built for dozens or hundreds of users, not millions, and our architecture choices should reflect that reality.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Progressive Migration Strategy
&lt;/h2&gt;

&lt;p&gt;My approach isn't completely without planning though. My current strategy involves:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Writing modular code where possible (without sacrificing progress)&lt;/li&gt;
&lt;li&gt;Following clean architecture principals where it makes sense&lt;/li&gt;
&lt;li&gt;Keeping components loosly coupled to avoid creating a maintainance nightmare&lt;/li&gt;
&lt;li&gt;Keeping potential future decomposition in mind as I develop&lt;/li&gt;
&lt;li&gt;Noticing which parts of the system naturally want to be seperate&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Nothing fancy or over-engineered, but it keeps development moving forward without creating to many technical constraints for the future.&lt;/p&gt;

&lt;h2&gt;
  
  
  It's Not Technical Debt – It's Strategic Simplicity
&lt;/h2&gt;

&lt;p&gt;This isn't about being lazy or taking shortcuts. It's about being realistic and making pragmatic choices that maintain momentum.&lt;/p&gt;

&lt;p&gt;Real technical debt isn't choosing a monolithic approach – it's writing poorly structured code, avoiding tests for critical functions, or having insufficient documentation. A well-designed monolith can be much easier to maintain than a collection of microservices that were implemented hastily because they seemed more sophisticated.&lt;/p&gt;

&lt;h2&gt;
  
  
  Lessons from the Trenches: What I've Learned Along the Way
&lt;/h2&gt;

&lt;p&gt;After working on &lt;a href="https://mockfast.io" rel="noopener noreferrer"&gt;MockFast&lt;/a&gt; for about a year (with plenty of breaks and distractions), I've learned some valuable lessons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Unexpected Evolution&lt;/strong&gt;: The features users value most weren't the ones on my initial roadmap.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Quick Feedback Loops Matter&lt;/strong&gt;: Being able to implement changes quickly meant I could respond to user feedback rapidly, which made a huge difference.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Motivation Needs Reinforcement&lt;/strong&gt;: It's much easier to stay motivated when you're shipping actual features rather than spending weeks on invisible infrastructure work.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Finding Balance is Hard&lt;/strong&gt;: Navigating the space between "good enough" and "perfect" is a constant challenge, but leaning toward "functional now" has generally been the right choice.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Conclusion: Enjoy the Journey
&lt;/h2&gt;

&lt;p&gt;When it comes to side projects, the best architecture isn't necessarily the most sophisticated or trendy - it's the one that enables you to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Build something meaningful without overwhelming yourself&lt;/li&gt;
&lt;li&gt;Learn valuable new skills along the way&lt;/li&gt;
&lt;li&gt;Solve actual problems that bother you or others&lt;/li&gt;
&lt;li&gt;Find enjoyment in the process rather than creating another source of stress&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For &lt;a href="https://mockfast.io" rel="noopener noreferrer"&gt;MockFast&lt;/a&gt;, that means maintaining simplicity, staying adaptable, and avoiding the trap of over-engineering that has killed so many promising side projects.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Takeaways:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Side projects succeed when you keep them managably simple&lt;/li&gt;
&lt;li&gt;Monoliths are often the smart strategic choice for individual developers&lt;/li&gt;
&lt;li&gt;Your architecture should support your project goals, not impress other developers&lt;/li&gt;
&lt;li&gt;If the project stops being enjoyable, re-evaluate your approach&lt;/li&gt;
&lt;li&gt;The best architecture is whatever helps you complete your project and get it to users&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Remember: The goal is to build something useful that actually makes it to production, not to create the most technically impressive system that forever remains a work in progress.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>java</category>
      <category>architecture</category>
    </item>
    <item>
      <title>My journey creating mockfast.io - a free API mocking tool</title>
      <dc:creator>Eric Tron</dc:creator>
      <pubDate>Fri, 28 Feb 2025 14:32:51 +0000</pubDate>
      <link>https://forem.com/eric_code/my-journey-creating-mockfastio-a-free-api-mocking-tool-1291</link>
      <guid>https://forem.com/eric_code/my-journey-creating-mockfastio-a-free-api-mocking-tool-1291</guid>
      <description>&lt;p&gt;I was working on some solo projects last year, and I kept getting so frustrated. Why? Because I always had to create fake API responses for testing my frontend before the backend was ready. Copy-pasting JSON everywhere, maintaining local files, constantly updating them...&lt;/p&gt;

&lt;p&gt;Seriously, I was spending more time managing fake data than actually coding!&lt;/p&gt;

&lt;h2&gt;
  
  
  My "aha" moment
&lt;/h2&gt;

&lt;p&gt;One day, after my test data got completely out of sync with what I was building, I thought "OK, that's enough". I knew there were some tools to create fake APIs, but nothing was exactly what I needed:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;json-server? Good but local only&lt;/li&gt;
&lt;li&gt;Postman mock? Cool but limited in free version&lt;/li&gt;
&lt;li&gt;Hardcode data? Please no&lt;/li&gt;
&lt;li&gt;Big paid services? Too expensive for small projects&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So I started building my own solution on nights and weekends. I wanted to create something that would help other developers like me. That's how mockfast.io was born - a 100% free cloud service to create API mocks with realistic data.&lt;/p&gt;

&lt;h2&gt;
  
  
  How it works (simple version)
&lt;/h2&gt;

&lt;p&gt;You just need to:&lt;/p&gt;

&lt;p&gt;1) Define what data you want:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"string.name.fullname"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; 
  &lt;/span&gt;&lt;span class="nl"&gt;"email"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"email"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"age"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"number"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"isActive"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"boolean"&lt;/span&gt;&lt;span class="w"&gt; 
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;2) Choose HTTP method (GET, POST, PUT, DELETE)&lt;/p&gt;

&lt;p&gt;3) Configure some options if you want (delay, errors, etc)&lt;/p&gt;

&lt;p&gt;And boom! You get a real URL that returns your fake data, like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://mockfast.io/backend/apitemplate/get/abc123
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When you call it, you get nice random data that matches your template:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Marie Johnson"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"email"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"marie.j88@example.com"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"age"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;32&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"isActive"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  The fake data library i'm building
&lt;/h2&gt;

&lt;p&gt;One thing I'm really proud of is my custom library for generating fake data. I'm actually building my own version of faker.js but with some tweaks I personally needed.&lt;/p&gt;

&lt;p&gt;Right now there are more than 50 data types, like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Full names, first names, last names&lt;/li&gt;
&lt;li&gt;Emails (general or specific like gmail, proton, etc)&lt;/li&gt;
&lt;li&gt;Addresses with streets, cities, postcodes&lt;/li&gt;
&lt;li&gt;Colors in different formats (hex, rgb, hsl)&lt;/li&gt;
&lt;li&gt;Country data with names, capitals, currencies&lt;/li&gt;
&lt;li&gt;And more!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you have ideas for data types you need, tell me! I'm adding new ones all the time based on what people ask for. Last week someone asked for more specific product data, so that's on my list now.&lt;/p&gt;

&lt;h2&gt;
  
  
  How I use it everyday
&lt;/h2&gt;

&lt;p&gt;Now this tool has become essential for my workflow:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;When building new frontend features&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
I create a mock API with the structure I plan to implement on the backend later&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;For trying out new UI ideas&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
No more setting up a whole backend just to test if a UI concept works!&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;When testing edge cases&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Need to test with a super long text? Or with missing data? Or with an API timeout? Just configure the mock how you want.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;For quick prototypes&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
When I have a new idea, I can create a working prototype in hours instead of days&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I've shared it with some developer friends and they're using it too. It's really satisfying to see something I built to solve my own problem help other devs!&lt;/p&gt;

&lt;h2&gt;
  
  
  Some technical details (for the curious)
&lt;/h2&gt;

&lt;p&gt;The service is built with Node.js and has a React frontend. The data generation happens on the server, and everything is cached for speed. I've designed it to be as simple as possible - I hate overcomplicated tools.&lt;/p&gt;

&lt;p&gt;I'm currently working on adding:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;More data types (especially for specific industries)&lt;/li&gt;
&lt;li&gt;Conditional responses&lt;/li&gt;
&lt;li&gt;Mock GraphQL APIs (this is tricky but coming soon)&lt;/li&gt;
&lt;li&gt;Response templates (save your favorite configurations)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why it's 100% free?
&lt;/h2&gt;

&lt;p&gt;People ask me this a lot. Honestly, I built mockfast.io to solve my own problems first, but I also wanted to give something back to the dev community. I've benefited from so many free tools and open source projects, this is my way of contributing.&lt;/p&gt;

&lt;p&gt;My costs for running it are reasonable for now, and I'd rather see it help as many developers as possible than make a few bucks. It makes me happy when I get messages from people saying it saved them time or made their work easier.&lt;/p&gt;

&lt;p&gt;Maybe someday I'll add a "pro" version with advanced features if the hosting costs become too much, but the core functionality will stay free.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it &amp;amp; give feedback!
&lt;/h2&gt;

&lt;p&gt;If you're constantly blocked waiting for APIs like I was, give &lt;a href="https://mockfast.io" rel="noopener noreferrer"&gt;mockfast.io&lt;/a&gt; a try. It takes about 30 seconds to create your first mock API.&lt;/p&gt;

&lt;p&gt;I'd love to hear what you think. What works? What doesn't? What's missing? I'm just one developer trying to make a useful tool, and your feedback really helps me improve it.&lt;/p&gt;

&lt;p&gt;And hey, if you find a bug, please let me know! I fix them fast :)&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>api</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
