A modular, multi-language file compiler and runner for .mfg files. Parse, compile, and execute with JavaScript, Python, or C++.
Easily parse structured .mfg files into groups, blocks, and argument blocks with simple syntax.
Support for dynamic variables and argument blocks that can be referenced throughout your files.
Native implementations in JavaScript, Python, C++, Rust for maximum flexibility and performance.
Run specific blocks or groups directly from the CLI with simple commands.
Clean, modular architecture that's easy to extend and integrate into your workflow.
Powerful command-line interface for automation and scripting tasks.
MetaForge files use a simple, structured syntax to define groups, blocks, and arguments:
# Define a group group mygroup { # Define a block block myblock { run echo "Hello, World!" } # Block with arguments block greet { args { name = "User" } run echo "Hello, ${name}!" } }
Run MetaForge from the command line with any of the three implementations:
# Run the entire file node compiler.js file.mfg # Run a specific block node compiler.js file.mfg --block mygroup.myblock # Pass arguments node compiler.js file.mfg --block mygroup.greet --args name=Alice
# Run the entire file python compiler.py file.mfg # Run a specific block python compiler.py file.mfg --block mygroup.myblock
# Compile and run g++ -o metaforge compiler.cpp ./metaforge file.mfg # Run a specific block ./metaforge file.mfg --block mygroup.myblock
Choose your preferred language implementation
Try parsing a .mfg file in your browser (JavaScript implementation)
MetaForge is open source and welcomes contributions from the community.