Rio: Build Web and Desktop Apps in Pure Python, No JavaScript Needed

This repository profile is provided by osrepos.com, an open source repository discovery platform.

Rio: Build Web and Desktop Apps in Pure Python, No JavaScript Needed

Summary

Rio is an innovative Python framework that allows developers to create web and desktop applications using pure Python, eliminating the need for HTML, CSS, or JavaScript. It provides a modern, declarative UI approach with over 50 built-in components, making app development efficient and enjoyable. With Rio, you can build powerful, type-safe applications that run seamlessly across different environments.

Repository Information

Analyzed by OSRepos on March 9, 2026

Use at your own risk

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.

Introduction

Rio is an innovative framework that empowers developers to build web and desktop applications entirely in Python. It removes the need for traditional web technologies like HTML, CSS, and JavaScript, offering a streamlined development experience. With Rio, you can create modern, interactive user interfaces using a declarative approach, leveraging Python's simplicity and power.

Installation

Getting started with Rio is straightforward. You can install it using pip:

pip install rio-ui

After installation, you can quickly scaffold a new project using the Rio command-line utility:

rio new my-project --type website --template "Tic-Tac-Toe"
cd my-project
rio run

Examples

Rio adopts a component-based architecture, similar to React, making UI development intuitive. Here's a simple example demonstrating a button click counter:

# Define a component that counts button clicks
class ButtonClicker(rio.Component):
    # Define the attributes of the component. Rio will watch these
    # for changes and automatically update the GUI.
    clicks: int = 0

    # Define a method that increments the click count. We'll later
    # make a button that calls this method whenever it is pressed.
    def _on_press(self) -> None:
        self.clicks += 1

    # Define the `build` method. This method essentially tells Rio
    # what a ButtonClicker component looks like. Whenever the state
    # of the ButtonClicker component changes, Rio will call its
    # `build` method and update the GUI according to the output.
    def build(self) -> rio.Component:
        return rio.Column(
            rio.Button('Click me', on_press=self._on_press),
            rio.Text(f'You clicked the button {self.clicks} time(s)'),
        )

# Create an App and tell it to display a ButtonClicker when it starts
app = rio.App(build=ButtonClicker)
app.run_in_browser()  # Or `app.run_in_window()` to run as local app!

Why Use Rio

Rio stands out for several compelling reasons:

  • 100% Python: Develop full-stack applications without touching HTML, CSS, or JavaScript.
  • Declarative UI: Enjoy a modern, intuitive way to build user interfaces.
  • Rich Component Library: Access over 50 built-in components for common UI elements.
  • Type-Safe: Integrates seamlessly with modern Python tooling, offering instant suggestions and problem highlighting.
  • Versatile Deployment: Run your applications locally as desktop apps or deploy them as web applications.
  • Open Source: A free and actively developed framework with a supportive community.

Links

Explore Rio further with these official resources:

Related repositories

Similar repositories that may be relevant next.

AutoResearch: AI/ML Research Agents from Idea to Paper-Ready Evidence

AutoResearch: AI/ML Research Agents from Idea to Paper-Ready Evidence

September 22, 2026

AutoResearch is an open-source agent workflow designed for AI and machine learning research. It automates the entire research process, from generating ideas and planning experiments to execution, analysis, and independent evaluation. This project helps researchers produce paper-ready evidence efficiently and with traceable provenance.

PythonAIMachine Learning
HarnessRouter: Unified Interface for AI Agent Harnesses

HarnessRouter: Unified Interface for AI Agent Harnesses

September 22, 2026

HarnessRouter Community Edition provides a self-hosted, Apache-2.0 licensed unified interface for various AI agent harnesses like Codex, Claude Code, and Hermes. It allows users to run multiple agents through a single API, offering features such as sessions, streaming, file handling, and cancellation. The project implements the open-standard Unified Harness Protocol (UHP), ensuring users maintain control over their keys and infrastructure.

AI AgentsAgent FrameworkLLM
AREX-Skill: A Skill Library for Automated Machine Learning and Auto-Research

AREX-Skill: A Skill Library for Automated Machine Learning and Auto-Research

September 21, 2026

AREX-Skill is a powerful skill library designed to advance automated machine learning and auto-research. It distills over 5,000 executable skills from more than 1,000 popular GitHub repositories, making complex ML knowledge directly usable by coding agents. This project significantly enhances agent performance in various research tasks by providing structured, validated operating knowledge.

PythonAutomated Machine LearningAI Agents
oh-my-hermes: Enhance Hermes Agent with Advanced AI Workflow and Memory

oh-my-hermes: Enhance Hermes Agent with Advanced AI Workflow and Memory

September 17, 2026

oh-my-hermes is an all-in-one plugin designed to significantly enhance the Hermes Agent. It provides advanced coding intelligence, a robust long-term memory system, and optimized workflow packages, transforming standard Hermes requests into structured, actionable tasks with clear operational layers.

AI AgentHermes AgentAI Tools

Source repository

Open the original repository on GitHub.

20 counted GitHub visits

View on GitHub
OS
OSRepos

Analysis and discovery of open source repositories. Find interesting projects and follow their updates.

Monitor your website with YourWebsiteScore

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of third-party repository code is at your own risk. Always review source code, dependencies, licenses, and security implications before running anything.

© 2025 OSRepos. Built with Nuxt 3 and lots of ❤️