[PITCH] Lib de multi páginas para Streamlit (Fazendo Front sem codar Front)
E aí, pessoal! 👋
Deixa eu contar pra vocês sobre um projeto que estou trabalhando – é o Streamlit Super App! Esse negócio é um canivete suíço pra quem tá na vibe de criar apps com Streamlit.
O que é? É um pacote que vai dar aquele gás no desenvolvimento de apps multipágina e ainda vem com um gerenciamento de estado dos widgets que é uma beleza.
Por que é legal?
- Roteamento de múltiplas páginas: Sabe aquela dor de cabeça de rotear suas páginas? Com essa biblioteca, a estrutura de pastas do seu projeto já resolve isso.
- Estado Persistente: Trocar de página sem perder os dados? Yes baby!
Instalação? Moleza!
pip install streamlit-superapp
Bora começar?
Cria uma pasta pages
e joga suas páginas lá dentro. Tipo assim:
pages/
├─ __init__.py
└─ hello/__init__.py
app.py
Aí no hello/__init__.py
, você faz a mágica acontecer com um "Hello World!" maneiro.
import streamlit as st
def main():
st.write("Hello Tab News!")
E no seu app.py
import streamlit_superapp
streamlit_superapp.run()
Agora é só dar um streamlit run app.py
e partir pro abraço!
Este será o seu hub de páginas:
E clicando nesse card maravilhoso você tem o seu Hello World!
Partindo para a loucura com páginas dentro de páginas dentro de páginas
Apenas criando arquivos vazios, o Streamlit Super App já desenha a interface na web!
├── hello
│ └── __init__.py
│
└── sub_paginas
├── pagina_1.py
├── pagina_2.py
└── __init__.py
Página Inicial
Sub Páginas
Acabou?
Ainda tem mais... mas convido vocês a checarem o repositório da biblioteca no Github e testar a Demo que tem exemplos bem legais!