Files
pymediamanager/app/main.py
2026-02-03 00:51:41 +00:00

53 lines
1.9 KiB
Python
Executable File

from nicegui import ui, app
from modules import file_manager, renamer, encoder, downloader, deployer
# --- CONFIGURAÇÃO DE ARQUIVOS ESTÁTICOS ---
app.add_static_files('/files', '/downloads')
app.add_static_files('/img', '/app/img')
# --- CABEÇALHO (HEADER) ---
# Cor alterada para 'bg-blue-700'
with ui.header(elevated=True).classes('items-center justify-center bg-slate-700 p-2'):
# Tamanho específico solicitado: w-1/2 com máximo de 100px
ui.image('/img/logotexto.png').classes('w-1/2 max-w-[100px] object-contain')
# --- NAVEGAÇÃO (TABS) ---
with ui.tabs().classes('w-full sticky top-0 z-10 bg-white shadow-sm') as tabs:
t_files = ui.tab('Gerenciador', icon='folder')
t_rename = ui.tab('Renomeador', icon='edit')
t_encode = ui.tab('Encoder', icon='movie')
t_down = ui.tab('Downloader', icon='download')
t_deploy = ui.tab('Mover Final', icon='publish')
# --- PAINÉIS DE CONTEÚDO ---
with ui.tab_panels(tabs, value=t_files).classes('w-full p-0 pb-12'): # pb-12 dá espaço para o footer não cobrir o conteúdo
with ui.tab_panel(t_files).classes('p-0'):
file_manager.create_ui()
with ui.tab_panel(t_rename):
renamer.create_ui()
with ui.tab_panel(t_encode):
encoder.create_ui()
with ui.tab_panel(t_down):
downloader.create_ui()
with ui.tab_panel(t_deploy):
deployer.create_ui()
# --- RODAPÉ (FOOTER) ---
# Fixo na parte inferior, mesma cor do header, texto centralizado
with ui.footer().classes('bg-slate-700 justify-center items-center py-1'):
# Texto com estilo levemente menor e fonte monoespaçada para dar o ar de "sistema/server"
ui.label('Criado por Creidsu. Clei-Server').classes('text-xs text-white opacity-90 font-mono tracking-wide')
# --- INICIALIZAÇÃO ---
ui.run(
title='PyMedia Manager',
port=8080,
reload=True,
storage_secret='secret',
favicon='/app/img/icone.ico' # Caminho absoluto
)