Skip to main content

Uma biblioteca para criar aplicações visuais com Python e tecnologias web.

Project description

AppModern

PyPI version License: MIT

AppModern é uma biblioteca Python para criar facilmente aplicações de desktop com interfaces web (HTML, CSS, JS), utilizando o poder do pywebview.

Visão Geral

A biblioteca abstrai a complexidade da comunicação entre Python e JavaScript, permitindo que você construa a interface do usuário com componentes Python que são renderizados dinamicamente no frontend.

Instalação

Você pode instalar o AppModern via pip:

pip install appmodern

Exemplo de Uso

Aqui está um exemplo simples de uma aplicação de login, como visto na pasta exemples/.

main.py

from appmodern.app import App
from appmodern.components import StyleExternal
import exemples.home # Importa as rotas da aplicação

app = App(title="Login", debug=True, lang='pt-br')
app.head.add_childrens(
    StyleExternal('style.css')
)
app.run()

home.py (onde a lógica da UI e as rotas são definidas)

from appmodern.components import Tag
from appmodern import route, create, read

class Div(Tag):
    # ... (custom components)

@route('home')
def home_page():
    create(
        Div('body',
            # ... (criação da UI)
            id='div-login',
        )
    )

@route('logar')
def logar():
    data = read(Input(id='login'), Input(id='password'))
    # ... (lógica de login)

Como Funciona

A biblioteca funciona da seguinte forma:

  1. A classe App inicializa uma janela pywebview.
  2. Componentes baseados na classe Tag são usados para definir a estrutura HTML em Python.
  3. As funções create, read, update e delete manipulam o DOM da página web em tempo real, comunicando-se com o JavaScript através da Api interna.
  4. O decorador @route permite que funções Python sejam chamadas diretamente a partir de eventos no JavaScript (como cliques de botão).

Licença

Este projeto está licenciado sob a Licença MIT. Veja o arquivo LICENSE para mais detalhes.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

appmodern-0.1.0.tar.gz (12.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

appmodern-0.1.0-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file appmodern-0.1.0.tar.gz.

File metadata

  • Download URL: appmodern-0.1.0.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.5

File hashes

Hashes for appmodern-0.1.0.tar.gz
Algorithm Hash digest
SHA256 bf3e25e4378510ebd0580e323039f064e9ecff402f019bf5231de97bc9020026
MD5 242ba7456c605246b06e0f27b88e0c3e
BLAKE2b-256 0852a16b42ecc7551999add570a2231c55945de22fda8da760112c9af8ab44af

See more details on using hashes here.

File details

Details for the file appmodern-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: appmodern-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.5

File hashes

Hashes for appmodern-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a1d52c80925318947d2f74b0bc758f9ee40b694ea3967a4b2666760d4d61951c
MD5 b6ae688984bb9f2d2612448e62bf40bb
BLAKE2b-256 cfd76d80daca52aee85af89c68954c2bce39a03fe41a669a18a28025302bbc76

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page