<?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: ALSOPS</title>
    <description>The latest articles on DEV Community by ALSOPS (@alsops).</description>
    <link>https://dev.to/alsops</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%2F3652372%2Fc21d6a86-1e6c-43a0-94a4-9153f2baa0d8.png</url>
      <title>DEV Community: ALSOPS</title>
      <link>https://dev.to/alsops</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/alsops"/>
    <language>en</language>
    <item>
      <title>I built an AI that autonomously bans attackers on Linux — no human in the loop</title>
      <dc:creator>ALSOPS</dc:creator>
      <pubDate>Sun, 07 Jun 2026 06:47:09 +0000</pubDate>
      <link>https://dev.to/alsops/i-built-an-ai-that-autonomously-bans-attackers-on-linux-no-human-in-the-loop-4l49</link>
      <guid>https://dev.to/alsops/i-built-an-ai-that-autonomously-bans-attackers-on-linux-no-human-in-the-loop-4l49</guid>
      <description>&lt;p&gt;Last year I got paged at 2am because someone was brute-forcing SSH on one of my servers. I woke up, fumbled for my phone, opened the dashboard, confirmed it was real, and banned the IP. By the time I did that — maybe 4 minutes — they'd tried 3,800 passwords.&lt;/p&gt;

&lt;p&gt;They didn't get in. But that's not the point.&lt;/p&gt;

&lt;p&gt;The point is: &lt;strong&gt;why did that require a human?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The pattern was unambiguous. High-frequency auth failures from a single IP, no prior connection history, no valid user account targeted. An intern could have made that call. So why was I woken up at 2am to rubber-stamp a decision that was already obvious?&lt;/p&gt;

&lt;p&gt;That question is why I built &lt;a href="https://watch.alsopss.com" rel="noopener noreferrer"&gt;Watch Cortex&lt;/a&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  The actual problem with Linux security tooling
&lt;/h2&gt;

&lt;p&gt;Most Linux security tools are good at one thing: &lt;strong&gt;generating alerts&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Wazuh fires alerts. Datadog fires alerts. Falco fires alerts. Auditd fires alerts. If you're lucky, your SIEM correlates those alerts into a bigger alert that you also have to manually act on.&lt;/p&gt;

&lt;p&gt;The human is always in the loop. And the human is always the bottleneck.&lt;/p&gt;

&lt;p&gt;This creates a well-documented failure mode: &lt;strong&gt;alert fatigue&lt;/strong&gt;. You get so many alerts that you stop trusting them. You start dismissing things. And then you miss the one that mattered.&lt;/p&gt;

&lt;p&gt;I wanted to build something different. Not "detect and alert." &lt;strong&gt;Detect, reason, and respond&lt;/strong&gt; — in the time it takes the attacker to try their next password.&lt;/p&gt;




&lt;h2&gt;
  
  
  How Watch Cortex works
&lt;/h2&gt;

&lt;p&gt;The architecture is built around three components:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. The Watch agent
&lt;/h3&gt;

&lt;p&gt;A single binary (~8MB) that deploys as a systemd service. Install:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://watch.alsopss.com/install-agent.sh | &lt;span class="nb"&gt;sudo &lt;/span&gt;bash &lt;span class="nt"&gt;-s&lt;/span&gt; &lt;span class="nt"&gt;--&lt;/span&gt; &lt;span class="nt"&gt;--token&lt;/span&gt; YOUR_TOKEN
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Done in under 60 seconds. The agent connects outbound over WSS on port 443 — no inbound firewall changes, no open ports.&lt;/p&gt;

&lt;p&gt;It monitors:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Process creation and termination with full ancestry trees&lt;/li&gt;
&lt;li&gt;Network connections and DNS queries&lt;/li&gt;
&lt;li&gt;File integrity changes (configs, SSH authorized_keys, crontabs)&lt;/li&gt;
&lt;li&gt;SSH authentication events&lt;/li&gt;
&lt;li&gt;Systemd unit additions&lt;/li&gt;
&lt;li&gt;User/group mutations&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Cortex AI — the on-agent reasoning engine
&lt;/h3&gt;

&lt;p&gt;This is the part I'm most proud of. Cortex runs &lt;strong&gt;locally on the agent&lt;/strong&gt; — no cloud call, no round-trip latency, no "cloud service is unreachable" failure mode.&lt;/p&gt;

&lt;p&gt;It classifies threats in &lt;strong&gt;under 8 milliseconds&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Cortex doesn't just match signatures. It correlates signals across process trees, network activity, and file writes to identify behavioral patterns:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Brute force followed by a successful login from a new IP → escalate&lt;/li&gt;
&lt;li&gt;Process that opens a network socket and writes to &lt;code&gt;/tmp&lt;/code&gt; → suspicious regardless of name&lt;/li&gt;
&lt;li&gt;SSH key added to authorized_keys by a process that isn't the user's shell → respond immediately&lt;/li&gt;
&lt;li&gt;Cron job added by a process with no history → flag&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Every alert comes with a plain-language investigation summary explaining &lt;em&gt;what triggered&lt;/em&gt;, &lt;em&gt;what it correlates to&lt;/em&gt;, and &lt;em&gt;what action was taken or recommended&lt;/em&gt;. Not &lt;code&gt;RULE_5023_TRIGGERED&lt;/code&gt;. An actual explanation.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Cortex Hive — fleet immune memory
&lt;/h3&gt;

&lt;p&gt;When Watch catches something on one server, it broadcasts that threat signature to &lt;strong&gt;every other agent in your fleet&lt;/strong&gt; immediately.&lt;/p&gt;

&lt;p&gt;One server gets hit with a new cryptominer variant → every other server learns to recognize and block it before it arrives. The fleet develops collective immunity.&lt;/p&gt;

&lt;p&gt;When you correct a Cortex decision — "that was actually legitimate, don't block that next time" — that correction propagates fleet-wide automatically. The whole fleet gets smarter from one operator's feedback.&lt;/p&gt;




&lt;h2&gt;
  
  
  The four automation modes
&lt;/h2&gt;

&lt;p&gt;I don't want to force everyone into full autonomous mode on day one. So Watch has a mode ladder:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Mode&lt;/th&gt;
&lt;th&gt;What it does&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Watch&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;AI observes and alerts. Every action requires your approval.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Assist&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Non-destructive actions (logging, enrichment) run auto. Destructive actions (IP ban, process kill) surface as one-click suggestions.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Autopilot&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;High-confidence threats acted on immediately. Low-confidence threats queue for your override.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Sovereign&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;AI acts on everything confirmed. You override rather than approve — system never waits.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Most people start on Assist. They see the one-click suggestions coming in, they confirm a few, they realize Cortex is right 95%+ of the time, and they bump to Autopilot. Some teams — especially infrastructure-heavy ones with no 24/7 security staff — run full Sovereign.&lt;/p&gt;

&lt;p&gt;The key insight is: &lt;strong&gt;humans should be the override path, not the approval path&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  What happens during a real attack sequence
&lt;/h2&gt;

&lt;p&gt;Here's a realistic SSH brute-force → persistence scenario and how Watch handles it in Autopilot mode:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;T+0s:&lt;/strong&gt; Attacker begins SSH brute force from 185.220.101.x&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+0.3s:&lt;/strong&gt; Watch agent detects high-frequency auth failures&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+0.8s:&lt;/strong&gt; Cortex classifies: brute force, high confidence&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+1.1s:&lt;/strong&gt; iptables rule added — IP banned&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+1.2s:&lt;/strong&gt; Threat broadcast to all fleet agents via Cortex Hive&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+1.5s:&lt;/strong&gt; Alert + investigation summary sent to dashboard  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;T+0s:&lt;/strong&gt; Attacker tries again from a different IP in same /24 subnet&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+0.3s:&lt;/strong&gt; Cortex correlates new IP to same campaign (same user targets, same timing pattern)&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+0.8s:&lt;/strong&gt; Subnet banned preemptively  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;T+0s:&lt;/strong&gt; Attacker somehow gets in (compromised credential, different vector)&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+2s:&lt;/strong&gt; New process spawned by sshd with unusual ancestry&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+3s:&lt;/strong&gt; Process opens outbound connection to known C2 range&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+3.2s:&lt;/strong&gt; Cortex classifies: reverse shell / lateral movement, high confidence&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+3.5s:&lt;/strong&gt; Process killed by PID&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+3.6s:&lt;/strong&gt; File integrity check initiated on affected paths&lt;br&gt;&lt;br&gt;
&lt;strong&gt;T+4s:&lt;/strong&gt; Operator notified with full chain-of-events summary  &lt;/p&gt;

&lt;p&gt;Total time from first detection to lateral movement blocked: &lt;strong&gt;4 seconds.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Time I need to be awake: &lt;strong&gt;0.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Why I didn't just use Wazuh
&lt;/h2&gt;

&lt;p&gt;Wazuh is genuinely good. It's open-source, extensible, and has a massive rule set. I used it for two years.&lt;/p&gt;

&lt;p&gt;But Wazuh is a SIEM. It collects events, matches rules, and fires alerts. That's it. Everything after the alert is on you.&lt;/p&gt;

&lt;p&gt;Watch is an autonomous response platform. The detection is table stakes. The response — especially the AI-reasoned, fleet-aware, offline-capable response — is the thing.&lt;/p&gt;

&lt;p&gt;The other thing: Wazuh alert noise. Out of the box, you'll tune it for weeks before it's quiet enough to trust. Cortex learns your specific server's baseline. It's not "process X is always suspicious" — it's "process X is suspicious on &lt;em&gt;this server&lt;/em&gt; because it's never done this before."&lt;/p&gt;




&lt;h2&gt;
  
  
  Offline operation
&lt;/h2&gt;

&lt;p&gt;This is a requirement I'm firm about. An agent that stops working when the backend is unreachable isn't actually protecting you — it's just making you feel protected.&lt;/p&gt;

&lt;p&gt;Cortex AI, threat signatures, contingency plans, and response policies are all pre-synced to each agent. When the backend is unreachable, detection and response continue at full capability. Actions taken offline are logged locally with cryptographic timestamps and synced when connectivity returns.&lt;/p&gt;

&lt;p&gt;If someone is actively attacking your server during a network incident, the last thing you need is your security agent phoning home and getting no answer.&lt;/p&gt;




&lt;h2&gt;
  
  
  The compliance angle
&lt;/h2&gt;

&lt;p&gt;Most teams I talk to are running on vibes for Linux compliance. "We have auditd enabled" doesn't get you through a SOC 2 audit. Watch automates the parts that actually matter:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;CIS Benchmark Level 1 &amp;amp; 2&lt;/strong&gt; — continuous posture monitoring&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SOC 2 Type II&lt;/strong&gt; — automated control mapping + evidence collection&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PCI-DSS v4&lt;/strong&gt; — cardholder data environment monitoring&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HIPAA&lt;/strong&gt; — access events and audit controls&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ISO 27001&lt;/strong&gt;, &lt;strong&gt;NIST 800-207 Zero Trust&lt;/strong&gt;, &lt;strong&gt;GDPR&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Business plan generates on-demand compliance reports. Enterprise/Empire run a continuous compliance forge — gaps are identified and closed automatically without you pulling a report and manually remediating.&lt;/p&gt;




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

&lt;p&gt;14-day free trial, no credit card, under 60 seconds to install:&lt;/p&gt;

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

&lt;p&gt;Developer plan is $39/month for 5 servers. Business is $149/month for 25 servers with Autopilot mode, fleet immune memory, and compliance automation.&lt;/p&gt;

&lt;p&gt;If you're running Linux in production with limited security headcount — or you've been paged at 2am one too many times to rubber-stamp an obvious brute-force — it's worth a look.&lt;/p&gt;

&lt;p&gt;Happy to answer questions in the comments. I've been building this for two years and I can talk about the architecture all day.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Built by &lt;a href="https://watch.alsopss.com" rel="noopener noreferrer"&gt;AL'S-OPS LLC&lt;/a&gt;. Feedback, issues, and security disclosures: &lt;a href="mailto:security@alsopss.com"&gt;security@alsopss.com&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>linux</category>
      <category>security</category>
      <category>ai</category>
      <category>devops</category>
    </item>
    <item>
      <title>From Idea to Product: How We Build Modern Web Applications</title>
      <dc:creator>ALSOPS</dc:creator>
      <pubDate>Fri, 13 Mar 2026 00:12:43 +0000</pubDate>
      <link>https://dev.to/alsops/from-idea-to-product-how-we-build-modern-web-applications-29gk</link>
      <guid>https://dev.to/alsops/from-idea-to-product-how-we-build-modern-web-applications-29gk</guid>
      <description>&lt;p&gt;Building a modern web application today is very different from even a few years ago. Users expect fast performance, seamless design, AI-powered features, and products that work flawlessly across devices.&lt;/p&gt;

&lt;p&gt;At Al’s-Ops LLC, we spend a lot of time thinking about how to build digital products that not only function well but also create meaningful user experiences.&lt;/p&gt;

&lt;p&gt;In this article, I want to share some of the principles and development practices we follow when building web applications, from early-stage concepts to production platforms.&lt;/p&gt;

&lt;p&gt;⸻&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Start With the Problem, Not the Technology&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;One of the biggest mistakes we see in product development is starting with technology instead of the user problem.&lt;/p&gt;

&lt;p&gt;Before writing a single line of code, we ask questions like:&lt;br&gt;
    • What real problem does this solve?&lt;br&gt;
    • Who is the user?&lt;br&gt;
    • How often will they use this product?&lt;br&gt;
    • What would make them return?&lt;/p&gt;

&lt;p&gt;This approach helps avoid over-engineering and ensures the product is actually valuable.&lt;/p&gt;

&lt;p&gt;For example, when building SwiftChef, our recipe discovery and meal planning platform, the focus wasn’t simply on storing recipes. The real challenge was helping users quickly find meals they want to cook and plan their week efficiently.&lt;/p&gt;

&lt;p&gt;That focus shaped everything that followed in the product.&lt;/p&gt;

&lt;p&gt;⸻&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Build an MVP That Can Scale&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Many founders hear the phrase “build an MVP” but misunderstand what it actually means.&lt;/p&gt;

&lt;p&gt;A good MVP should be:&lt;br&gt;
    • Minimal in features&lt;br&gt;
    • High quality in execution&lt;br&gt;
    • Designed with future scaling in mind&lt;/p&gt;

&lt;p&gt;The goal isn’t to launch something temporary. It’s to launch something small but strong.&lt;/p&gt;

&lt;p&gt;When designing architectures for new platforms, we typically aim for:&lt;br&gt;
    • Modular backend systems&lt;br&gt;
    • Clean API design&lt;br&gt;
    • Component-based frontend frameworks&lt;br&gt;
    • Cloud-native infrastructure&lt;/p&gt;

&lt;p&gt;This allows products to grow without requiring a full rewrite later.&lt;/p&gt;

&lt;p&gt;⸻&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;User Experience Is a Competitive Advantage&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The difference between successful apps and forgotten apps often comes down to UX.&lt;/p&gt;

&lt;p&gt;Great software should feel:&lt;br&gt;
    • Fast&lt;br&gt;
    • Intuitive&lt;br&gt;
    • Effortless&lt;/p&gt;

&lt;p&gt;This means developers need to think beyond functionality and consider:&lt;br&gt;
    • Load performance&lt;br&gt;
    • Visual hierarchy&lt;br&gt;
    • Interaction feedback&lt;br&gt;
    • Mobile responsiveness&lt;/p&gt;

&lt;p&gt;Even small improvements in usability can dramatically increase user retention.&lt;/p&gt;

&lt;p&gt;⸻&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;AI Is Changing Product Development&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Artificial intelligence is quickly becoming a core feature in many digital products.&lt;/p&gt;

&lt;p&gt;We’re seeing AI used for:&lt;br&gt;
    • Personalization&lt;br&gt;
    • Smart recommendations&lt;br&gt;
    • Natural language search&lt;br&gt;
    • Automated workflows&lt;/p&gt;

&lt;p&gt;The key is integrating AI in ways that actually improve the user experience, rather than adding it just because it’s trendy.&lt;/p&gt;

&lt;p&gt;For consumer platforms like SwiftChef, AI-driven discovery and intelligent filtering can dramatically improve how users find content.&lt;/p&gt;

&lt;p&gt;For SaaS tools, AI can automate tasks that previously required manual effort.&lt;/p&gt;

&lt;p&gt;⸻&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Speed Matters in Modern Development&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Startups and early-stage products need to move fast.&lt;/p&gt;

&lt;p&gt;This means focusing on development processes that prioritize:&lt;br&gt;
    • Rapid iteration&lt;br&gt;
    • Continuous deployment&lt;br&gt;
    • Feedback loops with real users&lt;/p&gt;

&lt;p&gt;Shipping quickly doesn’t mean sacrificing quality. It means building systems that allow you to improve the product continuously.&lt;/p&gt;

&lt;p&gt;⸻&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Collaboration Is Key to Great Products&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Great software rarely comes from one person working alone.&lt;/p&gt;

&lt;p&gt;The best products come from collaboration between:&lt;br&gt;
    • Developers&lt;br&gt;
    • Designers&lt;br&gt;
    • Product thinkers&lt;br&gt;
    • Founders&lt;br&gt;
    • Users&lt;/p&gt;

&lt;p&gt;At Al’s-Ops LLC, we work closely with teams to transform ideas into scalable digital products across areas like:&lt;br&gt;
    • Web applications&lt;br&gt;
    • E-commerce platforms&lt;br&gt;
    • AI-powered tools&lt;br&gt;
    • Gaming-related services&lt;/p&gt;

&lt;p&gt;⸻&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;/p&gt;

&lt;p&gt;The web is evolving faster than ever. New technologies appear constantly, but the fundamentals of building great products remain the same:&lt;br&gt;
    • Solve real problems&lt;br&gt;
    • Focus on the user experience&lt;br&gt;
    • Build systems that scale&lt;br&gt;
    • Iterate quickly&lt;/p&gt;

&lt;p&gt;If you’re building a new digital product or experimenting with a startup idea, these principles can help you move from concept to production more effectively.&lt;/p&gt;

&lt;p&gt;⸻&lt;/p&gt;

&lt;p&gt;About the Author&lt;/p&gt;

&lt;p&gt;Al’s-Ops LLC is a software development company building innovative web applications and digital products across gaming, e-commerce, web development, and artificial intelligence.&lt;/p&gt;

&lt;p&gt;Our flagship product, SwiftChef, is a premium recipe discovery and meal planning platform used by home cooks every day.&lt;/p&gt;

&lt;p&gt;🌐 &lt;a href="https://alsopss.com" rel="noopener noreferrer"&gt;https://alsopss.com&lt;/a&gt;&lt;br&gt;
📧 &lt;a href="mailto:b2b@alsopss.com"&gt;b2b@alsopss.com&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>startup</category>
      <category>productivity</category>
      <category>softwaredevelopment</category>
    </item>
    <item>
      <title>metaForge: A Multi-Language Build &amp; Automation Compiler</title>
      <dc:creator>ALSOPS</dc:creator>
      <pubDate>Mon, 08 Dec 2025 17:07:22 +0000</pubDate>
      <link>https://dev.to/alsops/metaforge-a-multi-language-build-automation-compiler-251k</link>
      <guid>https://dev.to/alsops/metaforge-a-multi-language-build-automation-compiler-251k</guid>
      <description>&lt;p&gt;I’m excited to share metaForge, a multi-language MFG compiler that makes building, running, and managing code files across languages easy.&lt;br&gt;
MetaForge parses .mfg files containing groups, blocks, arguments, and raw commands, expands variables, writes code files, and executes commands automatically. It’s designed for developers who want a flexible, multi-language build system.&lt;br&gt;
📌 Key Features&lt;br&gt;
Parse .mfg files into:&lt;br&gt;
Groups: collections of blocks with variables&lt;br&gt;
Blocks: named code files with optional run commands&lt;br&gt;
Args blocks: conditional blocks triggered by CLI arguments&lt;br&gt;
Raw variables &amp;amp; commands: global scope&lt;br&gt;
Variable Expansion: $var:name, $arg, $block:name, $group:name&lt;br&gt;
Automatic File Creation &amp;amp; Execution&lt;br&gt;
Verbose Logging (-v or --verbose)&lt;br&gt;
⚙️ Supported Languages&lt;br&gt;
C++ (default, compiled, fastest)&lt;br&gt;
JavaScript (Node.js based, easy to modify)&lt;br&gt;
Python (widely accessible)&lt;br&gt;
🚀 Quick Start&lt;br&gt;
Create a .mfg file:&lt;br&gt;
group js {&lt;br&gt;
    var greeting = "Hello World!"&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;block hello.js {
    code {
        console.log("$var:greeting");
    }
    run "node $block:hello.js"
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;}&lt;/p&gt;

&lt;p&gt;run "rm -rf $group:js"&lt;br&gt;
Run metaForge:&lt;br&gt;
metaForge example.mfg&lt;br&gt;
MetaForge will create hello.js with expanded variables, run it, and clean up automatically.&lt;br&gt;
Example CLI:&lt;br&gt;
metaForge build.mfg build    # Builds and runs everything&lt;br&gt;
metaForge build.mfg clean    # Removes generated files&lt;br&gt;
📖 Documentation&lt;br&gt;
Full guides, syntax reference, and advanced examples: metaforge.alsopss.com/docs&lt;br&gt;
🛠 Installation&lt;/p&gt;

&lt;h1&gt;
  
  
  Build C++ version (default)
&lt;/h1&gt;

&lt;p&gt;make build&lt;/p&gt;

&lt;h1&gt;
  
  
  Build JS or Python versions
&lt;/h1&gt;

&lt;p&gt;make build LANG=js&lt;br&gt;
make build LANG=py&lt;/p&gt;

&lt;h1&gt;
  
  
  Install
&lt;/h1&gt;

&lt;p&gt;sudo make install LANG=cpp&lt;br&gt;
Custom installation paths and packaging are supported via PREFIX and DESTDIR.&lt;br&gt;
🤝 Contributing&lt;br&gt;
Contributions are welcome! Submit Pull Requests or open Discussions on GitHub: &lt;a href="https://github.com/ALSOPSS/metaForge" rel="noopener noreferrer"&gt;https://github.com/ALSOPSS/metaForge&lt;/a&gt;&lt;/p&gt;

</description>
      <category>programming</category>
      <category>opensource</category>
      <category>buildtools</category>
      <category>programminglanguages</category>
    </item>
  </channel>
</rss>
