30 open-source projects similar to chrisknott/eel, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best ChrisKnott Eel alternative.
Eel is a Python HTML GUI framework designed for building desktop applications that utilize a Python backend and an HTML and JavaScript frontend. It functions as a local web server wrapper that hosts application assets and manages the browser window to provide a user interface. The framework provides a bidirectional Python-JavaScript bridge, allowing functions in either language to call each other in real time. It also includes a desktop application bundler to package Python code and web assets into a standalone executable for distribution. The system covers application window management, loc
WebUI is a backend-agnostic web UI framework and cross-language library designed to render web interfaces for applications written in any backend language. It functions as a binary protocol UI bridge that synchronizes backend state and frontend rendering through a standardized communication layer. The framework utilizes a portable binary protocol to facilitate data transfer between backend services and the web frontend. It employs language-specific wrappers to integrate various backend languages into a consistent communication format, allowing a single web interface to connect to diverse exec
Lorca is a framework for building cross-platform desktop applications using Go for the backend logic and HTML5 for the user interface. It functions as a wrapper that renders a web browser as the application window while executing core logic in a native process. The project provides a communication bridge that binds native Go functions to the browser environment and allows the backend to execute JavaScript directly within the browser window. It includes capabilities for packaging binaries with custom icons and branding for multiple operating systems. The framework covers window management, su
Phoenix is a cross-platform Python framework designed for building native desktop graphical user interfaces. It functions as a language binding generator and build automation system, enabling developers to create applications that utilize the underlying operating system's native controls and visual styles. The project provides a mechanism for mapping native C++ graphical toolkit components to Python, allowing for the development of desktop
Briefcase is a cross-platform build tool and native app packager that converts Python projects into standalone applications. It functions as a deployment framework designed to package Python code into binaries for desktop, mobile, and web platforms. The project utilizes a plugin-based architecture, allowing users to extend platform support and integrate new operating systems or specialized installation formats into the build process. The system handles cross-platform development through a configuration-driven build process. This covers capabilities including project generation from templates
fbs is a Python desktop application packager and cross-platform application installer. It serves as a utility for compiling Python code into standalone executables and bundling application resources into platform-specific installation packages for various desktop environments. The project functions as a Qt Python GUI builder and resource bundler. It provides a system for creating desktop user interfaces using Python and the Qt framework while packaging external files and assets to be accessed during application runtime. Its broader capabilities cover desktop application packaging, cross-plat
Wails is a cross-platform framework for building native desktop applications by combining a Go backend with web-based frontend technologies. It enables developers to create lightweight software by utilizing the host operating system's native web rendering engine, eliminating the need to bundle heavy browser dependencies. The framework distinguishes itself through a robust communication layer that bridges the backend and frontend. It automatically generates type-safe JavaScript bindings and proxies from Go code, allowing for seamless, asynchronous method invocation and data serialization acros
This project is a polyglot runtime bridge and interop framework designed to execute .NET and Node.js code within a single operating system process. It functions as a cross-runtime execution engine and in-process scripting host, enabling bidirectional communication and data exchange between the Common Language Runtime and JavaScript environments to eliminate cross-process communication overhead. The framework distinguishes itself by providing a system for bidirectional asynchronous callbacks and automatic data marshalling of binary buffers and serializable values between different managed obje
Brython is a Python 3 runtime and interpreter that executes scripts directly in the web browser. It serves as a client-side environment that translates Python source code into executable JavaScript to handle frontend logic without requiring server round-trips. The project provides a bidirectional interoperability bridge between Python and JavaScript, allowing for the integration of external JavaScript libraries. It further functions as a tool for packaging Python scripts into standalone native mobile applications for Android devices. The runtime includes a library for programmatic manipulati
DearPyGui is a hardware-accelerated Python GUI framework and graphics rendering engine. It operates as an immediate mode user interface system, rendering frames from scratch to ensure high performance and minimal state management for desktop applications. The project functions as a GPU-accelerated plotting library capable of rendering millions of data points with high frame rates. It also serves as a node editor toolkit for constructing interactive graph-based interfaces to manage visual data flows. The framework includes capabilities for custom 2D graphics rendering, interface theme customi
pywebview is a cross-platform desktop GUI framework for Python that renders HTML, CSS, and JavaScript content using the operating system's native web rendering engine. It enables developers to build desktop applications that run on Windows, macOS, and Linux from a single Python codebase, with the web frontend displayed in a lightweight, native window. The framework provides a bidirectional JavaScript-Python bridge for real-time data exchange between frontend and backend, along with the ability to manipulate the Document Object Model directly from Python without writing JavaScript. It includes
PySimpleGUI is a Python framework used to build graphical user interfaces. It functions as an adapter-based wrapper that maps multiple GUI toolkit APIs into a single unified interface, allowing for backend-agnostic development across tkinter, Qt, or WxPython. The project uses a layout-based UI definition system where visual hierarchies are defined via nested lists rather than coordinate-based placement. It employs an event-driven polling loop and string-based event mapping to associate interface elements with specific user actions. The framework supports cross-framework GUI design and intera
Toga is a cross-platform UI framework and Python native GUI toolkit used to build applications that render native user interfaces across different operating systems. It functions as a native widget wrapper, mapping Python code to native operating system components to ensure a consistent look and feel. This development kit allows a single codebase to be deployed across desktop computers, handheld mobile devices, and web browsers. It utilizes a multi-backend rendering engine to direct UI declarations to the appropriate renderer based on the target environment. The framework covers native deskt
Microsoft UI XAML is a XAML UI framework and Windows desktop UI toolkit used for building native desktop user interfaces. It functions as a cross-version Windows UI library that adapts modern interface features to remain compatible across different versions of the operating system. The project includes a low-level composition engine for creating high-performance animations, lighting effects, and translucent window materials. It provides a system for native desktop interface construction using a consistent design system for layouts and interactions. Capability areas cover interactive map rend
This is a lightweight, header-only C/C++ library used to embed browser engines into native desktop applications. It serves as a desktop GUI framework that allows developers to build native applications using HTML and CSS for the user interface layer. The library provides a unified cross-platform browser component that wraps WebKit on Linux and macOS and WebView2 on Windows. It includes a native code bridge to bind JavaScript functions to C++ logic, enabling high-performance operations and data exchange across language boundaries. The project handles platform-specific browser integration and
Neutralinojs is a lightweight cross-platform desktop application framework that allows developers to build native applications using web technologies and a C++ backend. It serves as a native system API bridge, enabling JavaScript frontend code to execute system commands and manage files across Windows, macOS, and Linux. The project distinguishes itself as a portable runtime that renders interfaces via the system's built-in webview instead of bundling a full browser engine. This approach enables the packaging of web assets into small, standalone executable binaries. The framework provides com
DearPyGui is a GPU-accelerated, immediate-mode graphical user interface framework for Python. It provides a high-performance toolkit for building interactive desktop applications by leveraging native hardware-accelerated rendering backends across multiple operating systems. By utilizing an immediate-mode execution model, the library offers direct control over the rendering loop and element state, enabling the creation of responsive, dynamic interfaces. The framework distinguishes itself through its ability to handle complex, high-frequency visual updates, making it suitable for real-time data
Elements is a C++ GUI library and component-based UI framework used for building desktop user interfaces. It features a retained-mode layout engine that manages the positioning, sizing, and layering of elements within a window. The framework functions as a cross-platform window manager, handling application event loops and embedding graphical views into native platform windows. It allows for the creation of custom widgets by composing basic primitive elements and alignment wrappers. The system supports responsive layout organization through the use of tiles, grids, and flows. It also provide
This project is a comprehensive performance programming guide and reference for the Go language, focusing on runtime efficiency and memory optimization. It provides a collection of patterns and techniques designed to increase execution speed by reducing garbage collection overhead and optimizing memory usage. The resource distinguishes itself through detailed reference implementations for memory optimization, such as escape analysis, object pooling, and structure memory alignment. It offers specific strategies for reducing binary size and improving CPU cache efficiency through structure memor
Carlo is a Node.js web rendering framework and desktop application bundler. It functions as a server-side browser controller and headless automation bridge that uses a local browser instance as the primary user interface for Node.js applications. The project distinguishes itself by providing a bidirectional bridge for cross-environment JavaScript integration, allowing server-side functions to be exposed to the browser window object and enabling the execution of page-context code from the server. It includes capabilities for packaging applications into standalone desktop executables, complete
Hammerspoon is a programmable automation engine for macOS that enables deep system-level control through a Lua scripting environment. By bridging high-level scripts with native Objective-C APIs, it allows users to interact with the operating system's accessibility tree, intercept hardware input streams, and manage the lifecycle of running applications. The project distinguishes itself through an event-driven architecture that registers asynchronous hooks for system notifications and hardware events. This allows for real-time automation, such as remapping keyboard and mouse inputs, managing wi
Azul is a native desktop application builder and UI toolkit for creating high-performance graphical user interfaces. It utilizes a functional and reactive programming model for managing layout and state, enabling the development of native software through a CSS-based toolkit. The framework is distinguished by its use of the WebRender engine to provide GPU-accelerated rendering. This allows the system to display complex user interface elements with high efficiency and speed by leveraging hardware acceleration. The project enables the design of desktop interfaces using a document object model
PyOxidizer is a Python application packager and interpreter embedder designed to compile Python code and dependencies into a single standalone executable binary. It functions as a distribution tool that allows applications to run on target machines without a pre-installed interpreter. The project serves as a bridge between Rust and Python, providing a framework to integrate the two languages for creating linkable libraries or incrementally replacing logic. It facilitates the embedding of a Python runtime into larger applications to execute scripts or provide Python-based logic. The toolset c
Puerts is a TypeScript runtime embedder and game engine scripting framework designed to integrate dynamic languages into low-level host applications. It functions as a high-performance cross-language API bridge, allowing developers to execute gameplay logic and editor scripts using TypeScript and JavaScript within a compiled host environment. The project distinguishes itself through a unified bridging API that supports pluggable scripting backends, enabling the selection or hot-swapping of different language engines to balance execution speed against binary size. It provides automated type de
Kivy is a cross-platform Python GUI framework used to build graphical user interfaces that run on desktop and mobile operating systems from a single codebase. It functions as a multi-touch UI library and a custom widget toolkit, providing a development environment for packaging Python applications into binary installations for Android and iOS. The framework is distinguished by its ability to handle complex multi-touch gestures and interactive input across various devices. It utilizes a specialized domain language for declarative UI construction to separate visual layout definitions from Pytho
This project is a framework for building native macOS desktop applications. It serves as a desktop port of a cross-platform mobile framework, providing a development environment and a native UI library to create software using native system frameworks and a component-based architecture. The framework enables the development of native macOS applications by integrating a JavaScript-based workflow with macOS system-level frameworks. It facilitates cross-platform UI development by allowing logic and design patterns to be shared across different operating systems while maintaining native desktop i
This project is a collection of implementation patterns and source code examples for building desktop applications using various Python interface libraries. It provides reference implementations and architectural patterns for multiple frameworks, including PyQt, PySide, Tkinter, Kivy, and Streamlit. The repository distinguishes itself by offering specialized examples for diverse interface types, ranging from professional desktop software and native windows to reactive web-based data dashboards and data science tools. It includes specific reference material for cross-platform UI patterns, such
Flet is a cross-platform framework that enables developers to build interactive desktop, mobile, and web applications using only Python. By utilizing a declarative programming model, it allows for the construction of complex user interfaces through a hierarchical structure of components, removing the need for specialized knowledge of web-specific languages like HTML, CSS, or JavaScript. The framework distinguishes itself by offloading visual rendering to a high-performance graphics engine while maintaining application logic within a centralized server-side environment. This architecture synch
Sun-Valley-ttk-theme is a styling library for the Tkinter toolkit that provides a modern visual aesthetic for desktop applications. It functions as a collection of design assets and configuration frameworks that update the appearance of standard interface widgets to align with contemporary design standards. The library enables dynamic switching between light and dark visual modes at runtime, allowing applications to respond to user preferences without requiring a restart. It includes utilities for automatic synchronization with system-level theme settings, ensuring consistent visual presentat
This project provides a full Python interpreter compiled to WebAssembly, enabling the execution of Python code and scientific libraries directly within web browsers and server-side environments. By bridging the gap between language runtimes, it allows developers to run computational tasks, manage packages, and perform data analysis in client-side environments without requiring a backend server. The platform distinguishes itself through a comprehensive foreign function interface that enables bidirectional data exchange, object proxying, and function calling between Python and JavaScript. It in