Remi

Create GUI applications in Python that run in your browser

Web License: Apache-2.0 Best for: Server-side GUIs without front-end frameworks
Official docs All frameworks

Demo

Remote GUI over HTTP

Overview

Remi is a Python library for developing graphical user interfaces that are rendered in a web browser, allowing you to create desktop-like applications using Python with no Javascript knowledge required.

Key features

  • Runs on all major web browsers
  • No HTML or Javascript needed by the developer
  • Real-time GUI updates and interactions
  • Cross-platform compatibility
  • Supports custom HTML/CSS if needed

Common use cases

  • Portable GUI applications
  • Education and teaching tools
  • Internal tools and dashboards
  • Rapid development of prototypes
  • Applications with Web UI requirements

Installation

pip install remi

Example

import remi.gui as gui
from remi import start, App

class MyApp(App):
    def __init__(self, *args):
        super(MyApp, self).__init__(*args)

    def main(self):
        # Creates a button widget
        button = gui.Button("Click me!")
        button.onclick.do(self.on_button_pressed)

        # Returns the root widget
        return button

    def on_button_pressed(self, widget):
        # Define behavior when the button is clicked
        print("Button clicked!")

if __name__ == "__main__":
    # Start the app
    start(MyApp)

Related frameworks