Skip to content

zapabob/mesop

This branch is 431 commits behind mesop-dev/mesop:main.

Folders and files

NameName
Last commit message
Last commit date
Jun 6, 2024
Jun 7, 2024
Dec 13, 2023
Nov 15, 2023
May 29, 2024
Jun 8, 2024
Jun 8, 2024
Jun 7, 2024
Jun 8, 2024
May 16, 2024
Jun 6, 2024
Jan 3, 2024
May 29, 2024
Nov 15, 2023
Nov 15, 2023
Dec 13, 2023
Dec 15, 2023
May 29, 2024
May 19, 2024
Dec 20, 2023
Nov 3, 2023
Dec 6, 2023
Jun 6, 2024
Oct 13, 2023
Jun 8, 2024
May 29, 2024
Feb 9, 2024
Jun 6, 2024
Jun 8, 2024
Jun 7, 2024
Apr 11, 2024
Nov 15, 2023
May 17, 2024
Dec 7, 2023
Jan 11, 2024
May 10, 2024
Dec 15, 2023
Dec 12, 2023
Jun 7, 2024

Repository files navigation

Mesop: Build delightful web apps quickly in Python 🚀

Used at Google for rapid internal app development

Mesop is a Python-based UI framework that allows you to rapidly build web apps like demos and internal apps:

Intuitive for UI novices ✨

  • Write UI in idiomatic Python code
  • Easy to understand reactive UI paradigm
  • Ready to use components

Frictionless developer workflows 🏎️

  • Hot reload so the browser automatically reloads and preserves state
  • Rich IDE support with strong type safety

Flexible for delightful demos 🤩

  • Build custom UIs without writing Javascript/CSS/HTML
  • Compose your UI into components, which are just Python functions

Write your first Mesop app in less than 10 lines of code...

Demo app

import time

import mesop as me
import mesop.labs as mel


@me.page(path="/text_to_text", title="Text I/O Example")
def app():
  mel.text_to_text(
    upper_case_stream,
    title="Text I/O Example",
  )


def upper_case_stream(s: str):
  yield s.capitalize()
  time.sleep(0.5)
  yield "Done"

Try it

Colab

You can try Mesop on Colab!

Locally

Step 1: Install it

$ pip install mesop

Step 2: Copy the example above into main.py

Step 3: Run the app

$ mesop main.py

Learn more in Getting Started.

Disclaimer

This is not an officially supported Google product.

Releases

No releases published

Packages

No packages published

Languages

  • Python 43.0%
  • TypeScript 29.8%
  • Starlark 15.4%
  • HTML 3.9%
  • SCSS 3.4%
  • JavaScript 2.7%
  • Other 1.8%