<?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: JunoEngine Devs</title>
    <description>The latest articles on DEV Community by JunoEngine Devs (@junoengine_developer).</description>
    <link>https://dev.to/junoengine_developer</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4034568%2Fca5463af-8d72-403a-9276-12f04bbc7c7d.png</url>
      <title>DEV Community: JunoEngine Devs</title>
      <link>https://dev.to/junoengine_developer</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/junoengine_developer"/>
    <language>en</language>
    <item>
      <title>Why I Tied My IDE to a Contract: The Story Behind Juni's EULA</title>
      <dc:creator>JunoEngine Devs</dc:creator>
      <pubDate>Fri, 24 Jul 2026 20:27:50 +0000</pubDate>
      <link>https://dev.to/junoengine_developer/why-i-tied-my-ide-to-a-contract-the-story-behind-junis-eula-35dj</link>
      <guid>https://dev.to/junoengine_developer/why-i-tied-my-ide-to-a-contract-the-story-behind-junis-eula-35dj</guid>
      <description>&lt;p&gt;When you're building developer tools, licensing is usually an afterthought—a standard MIT or Apache boilerplate you copy-paste from another repo and never look at again. But when I set out to build Juni IDE, I decided to do something a bit unconventional: I baked a mandatory legal contract right into the core usage agreement, including a $200/month commercial license threshold for larger businesses.&lt;/p&gt;

&lt;p&gt;If you're thinking, "Requiring a contract for an IDE? That sounds like a great way to kill adoption," hear me out. Let's talk about why I did it, how it works, and what it means for developers and companies using Juni.&lt;/p&gt;

&lt;p&gt;The Core Philosophy: Free for Hobbyists, Fair for Enterprise&lt;br&gt;
When building software like desktop installers (macOS, Windows, Linux), web IDEs, and PWA builds, sustainability is the hardest problem to solve. Open-source is amazing, but solo maintainers often burn out trying to support enterprise teams who pull in millions in revenue while contributing zero back to the tooling they rely on.&lt;/p&gt;

&lt;p&gt;To solve this, the Juni End User License Agreement (EULA) is structured around a simple principle:&lt;/p&gt;

&lt;p&gt;Personal, hobby, and small business use: Completely free. No fees, no friction.&lt;br&gt;
Commercial scale ($1M+ / Small Business threshold): If your company grows beyond the defined small business limits, a commercial license is required at USD $200/calendar month.&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed"&gt;

  &lt;br&gt;
&lt;strong&gt;The Rule of Thumb:&lt;/strong&gt; If your organization scales past the small business threshold, supporting the infrastructure and development of the tool via a $200/mo commercial license isn't just a fee—it's ensuring the IDE you build your products on stays alive.&lt;br&gt;

&lt;/div&gt;


&lt;p&gt;What You Actually Own (Spoiler: Not Your Source Code)&lt;br&gt;
One of the biggest anxieties developers have with specialized IDEs or proprietary engines is vendor lock-in or loss of ownership over their creations.&lt;/p&gt;

&lt;p&gt;We made sure Juni's EULA explicitly protects the creator:&lt;/p&gt;

&lt;p&gt;Your projects remain yours: Your source code, assets, scenes, and exported games belong 100% to you. The EULA doesn't claim rights to your content.&lt;br&gt;
The Export Exception: You are totally free to distribute your content (even commercially) using the normal exported runtime files.&lt;br&gt;
The Fine Print: Acceptable Use and Enforcement&lt;br&gt;
Of course, a binding contract has teeth. Under the EULA, using Juni means agreeing to a few non-negotiable boundaries:&lt;/p&gt;

&lt;p&gt;No reverse-engineering, redistributing, rebranding, or selling the Juni IDE/app binaries themselves.&lt;br&gt;
No bypassing the commercial license requirements if your company exceeds the small business thresholds.&lt;br&gt;
Standard safety guards: No malware, no IP infringement, and no removing required copyright notices from the IDE or exported runtimes.&lt;br&gt;
As for liability? Juni is provided “AS IS”, with damages capped strictly at the fees you paid for commercial access in the previous three months (or zero if you're on the free tier).&lt;/p&gt;

&lt;p&gt;Why This Matters for the Ecosystem&lt;br&gt;
Tools aren't built in a vacuum. By establishing a clear, legally binding contract upfront, it sets clear expectations between indie creators and corporate consumers. If a company is making over a million dollars in revenue, paying $200/mo for the IDE powering their workflow shouldn't be a hurdle—it should be a no-brainer.&lt;/p&gt;

&lt;p&gt;What do you all think about tying developer tools to revenue-based commercial contracts? Have you ever had to navigate licensing hurdles like this in your own projects? Let me know in the comments below!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>productivity</category>
      <category>webgpu</category>
    </item>
    <item>
      <title>Juni: Python and C++ United in JunoEngine WebApp</title>
      <dc:creator>JunoEngine Devs</dc:creator>
      <pubDate>Sat, 18 Jul 2026 01:21:00 +0000</pubDate>
      <link>https://dev.to/junoengine_developer/juni-python-and-c-united-in-junoengine-webapp-a54</link>
      <guid>https://dev.to/junoengine_developer/juni-python-and-c-united-in-junoengine-webapp-a54</guid>
      <description>&lt;p&gt;Hello Devs!: Juni – a Python-feel systems language that compiles to WASM for games built on a custom software called JunoEngine&lt;/p&gt;

&lt;p&gt;URL&lt;/p&gt;

&lt;p&gt;&lt;a href="https://junoengine.netlify.app" rel="noopener noreferrer"&gt;https://junoengine.netlify.app&lt;/a&gt; or &lt;a href="https://juno.pythonianviper.workers.dev/" rel="noopener noreferrer"&gt;https://juno.pythonianviper.workers.dev/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The Hotpockets&lt;/p&gt;

&lt;p&gt;I built Juni, a statically typed systems language that aims for Python-level readability with C++-ish control: no GC, explicit memory/refs, and a compiler that targets WebAssembly. Juno is the repo around it — browser IDE, Tauri desktop shell, and a small game/sim runtime.&lt;/p&gt;

&lt;p&gt;Why&lt;/p&gt;

&lt;p&gt;I wanted one language that could author game logic and run it in the browser without a JS/TS game-script layer as the source of truth. Juni compiles to WASM; the host is a thin JS runtime (Canvas2D, WebGPU 3D, input, audio, ECS scenes).&lt;/p&gt;

&lt;p&gt;What’s in the box (v9.2)&lt;/p&gt;

&lt;p&gt;Compiler in Rust (parse → check → WASM codegen), plus LSP bits&lt;br&gt;
Browser IDE (Vite + Monaco) with compile/run in-tab, scene editor, tile brush, 3D Edit viewport on WebGPU&lt;br&gt;
Entity scripts: .jscene handlers map to WASM exports like player_on_update&lt;br&gt;
Optional on-device AI via WebLLM (off by default)&lt;br&gt;
juni export-web for static game builds; desktop installers via Tauri CI&lt;br&gt;
Apache-2.0 source; distributed IDE also has an EULA&lt;br&gt;
Interesting bits / tradeoffs&lt;/p&gt;

&lt;p&gt;Language surface is deliberately small — enough for frames, entities, and host calls, not a general OS language yet&lt;br&gt;
Browser “LSP” is WASM hover/diagnostics, not a full language server process&lt;br&gt;
3D is a slice (mesh/light/camera + world_draw3d), not a full engine competitor&lt;br&gt;
Themes and a silly Cat Coffee panel exist because the IDE is also a place I actually sit in&lt;br&gt;
Try it&lt;/p&gt;

&lt;p&gt;Open the IDE, hit Run (⌘/Ctrl+Enter). There are tutorials and a platformer example in-repo.&lt;/p&gt;

&lt;p&gt;Repo: &lt;a href="https://github.com/AJpro774/Juno" rel="noopener noreferrer"&gt;https://github.com/AJpro774/Juno&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I’d love feedback on the language surface, the WASM entity-script ABI, and whether the IDE feels usable for small 2D/3D prototypes.&lt;/p&gt;

</description>
      <category>gamedev</category>
      <category>rust</category>
      <category>showdev</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
