Uma biblioteca para criar aplicações visuais com Python e tecnologias web.
Project description
AppModern
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:
- A classe
Appinicializa uma janelapywebview. - Componentes baseados na classe
Tagsão usados para definir a estrutura HTML em Python. - As funções
create,read,updateedeletemanipulam o DOM da página web em tempo real, comunicando-se com o JavaScript através daApiinterna. - O decorador
@routepermite 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bf3e25e4378510ebd0580e323039f064e9ecff402f019bf5231de97bc9020026
|
|
| MD5 |
242ba7456c605246b06e0f27b88e0c3e
|
|
| BLAKE2b-256 |
0852a16b42ecc7551999add570a2231c55945de22fda8da760112c9af8ab44af
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a1d52c80925318947d2f74b0bc758f9ee40b694ea3967a4b2666760d4d61951c
|
|
| MD5 |
b6ae688984bb9f2d2612448e62bf40bb
|
|
| BLAKE2b-256 |
cfd76d80daca52aee85af89c68954c2bce39a03fe41a669a18a28025302bbc76
|