A build tool that packages full-stack web apps as a single executable binary with zero runtime dependencies.
EXE is a build tool that packages full-stack web applications—built with frameworks like SvelteKit, Nuxt, or TanStack—into a single executable binary. It solves the problem of distributing web apps without losing server-side functionality or requiring users to install runtime dependencies like Node.js or Docker. The resulting binary runs independently on any platform while preserving features such as SSR, API routes, and authentication.
Developers building full-stack web applications who need to distribute them as standalone software, especially for open-source tools, commercial self-hosted products, privacy-focused apps, or interactive demos.
Developers choose EXE because it uniquely combines the convenience of a dependency-free binary with the full capabilities of modern full-stack frameworks, avoiding the trade-offs of static builds or containerized deployments. Its zero-runtime approach simplifies distribution and execution for end-users.
Pack your web app as a single executable binary with zero runtime dependencies
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
End-users can run the app without installing Node.js or Docker, simplifying distribution as highlighted in the README's 'Why' section.
Maintains SSR, API routes, and middleware from frameworks like SvelteKit, avoiding the limitations of static builds mentioned in the philosophy.
Generates binaries for multiple operating systems from one codebase, enabling wide distribution as per the key features.
Automatically creates a Dockerfile for Fly.io deployment, reducing setup effort for cloud hosting as shown in the bonus section.
Only SvelteKit has stable support; Nuxt and TanStack are experimental, restricting adoption for other full-stack frameworks.
Requires Bun installation for building, adding a tooling barrier that might not fit into existing Node.js-centric workflows.
Packaging the entire app into a binary could result in larger file sizes and slower startup times compared to optimized server deployments.
As a newer project, it lacks extensive documentation, community plugins, and might have breaking changes or bugs.