The world opens up. Cross the frontier.

The Agnostic GUI Framework.

Build native Desktop apps using HTML/JS. Control them with backends in any language. Ship a single static executable.

Get Frontier and build your program:

irm "https://frontier-fw.dev/win/get.ps1" | iex
View Examples

Need help? Detailed installation guide available in the documentation.

frontend/index.html
                        <head>
                            <meta name="frontier-title" content="My App">
                            <meta name="frontier-width" content="800">
                        </head>
                        <body>
                            <button onclick="runBackend()">
                                Execute
                            </button>

                            <script>
                                function runBackend() {
                                    window.ipc.postMessage('trigger|args');
                                }
                            </script>
                        </body>
                    
backend/logic.py
                        import sys

                        # Frontier passes arguments 
                        # from the web UI to CLI args
                        args = sys.argv[1:]

                        print(f"Native result: {args}")
                        # Result is routed back to 
                        # window.Frontier.dispatch
                    

Single Binary

Manager orchestrates your frontend and backend into a single static Windows executable. No DLLs, no external dependencies.

Hot Reload

Run .\frontier dev and see your changes instantly. Front-end reloads, back-end silently recompiles.

Native WebView

Powered by Edge WebView2 on Windows. Lightweight and fast, consuming far less RAM than traditional Electron apps.

Polyglot Modules

C, Python, Rust, Go, or Batch. If it runs on a computer, Frontier can bridge it to your interface.

Meta-Tag Windowing

Configure title, size, math-based positioning (centering), and constraints directly within your HTML <head>.

Security Whitelisting

Strict URL routing ensures your app only opens what you allow. Multi-category handling for Internal vs Browser links.

Built for every language.

Frontier's Module Manifest system teaches the framework how to build or interpret your code. Switch from Python scripts to compiled C binaries by changing a single field.

Python C / C++ Rust Go Node.js
modules/mod_gcc/manifest.toml
                        name = "Mod GCC"
                        extension = "c"
                        suppress_window = true

                        [dev]
                        strategy = "build"

                        [build]
                        command = "gcc %IN% -o %OUT%"
                    

System Architecture

The Manager (Build-time)

  • Validates frontier.toml project settings.
  • Compiles backend source files into assets.
  • Bundles HTML/JS using rust-embed.
  • Injects Windows resources (Icons, Metadata).

The Core (Runtime)

  • Serves files via the virtual frontier:// protocol.
  • Orchestrates the IPC bridge between UI and OS.
  • Manages state persistence in %LOCALAPPDATA%.
  • Handles security URL category deduplication.

Roadmap

The Foundation

IPC Bridge, HTML meta-tag parsing, Persistence layer, and Windows Static build system.

Cross-Platform (Linux)

Implementing Linux-compatible build pipelines and Webview bindings for unified source execution.

Standalone Framework

Transitioning to a pre-compiled binary that allows users to build apps without local Rust/C compilers.