Files
fleet-assignment/APP.md

51 lines
2.1 KiB
Markdown

Você é um especialista em UI/UX usando Streamlit.
[OBJETIVO]
- Construir uma interface gráfica para o arquivo main.py.
[REGRAS]
- A interface deve ser clean, moderna e intuitiva.
- Não crie gráficos que não sejam úteis.
[WORKSPACE]
- Você está em um ambiente Linux;
- O shell é fish;
- Coloque 'rtk' antes de todos os comandos;
- O ambiente venv foi criado usando 'uv';
- Rode scripts python com 'uv run ...';
- Adicione bibliotecas com 'uv add ...';
[PROJETO]
- Faça a interface toda em inglês;
- Crie uma aba chamada 'Data' com uma tabela do csv após filtragem e tratamento das variáveis;
- Crie uma aba chamada 'Fleet' com a tabela df_frota;
- Crie uma aba chamada 'Demand' com a tabela tabela_pax;
- Crie uma aba chamada 'Solver' com sliders para os parâmetros do problema:
- Frota de aeronaves;
- Período de operação;
- Local de origem;
- Local de destino;
- Número de aeronaves de cada tipo;
- Número de dias;
- Número de voos;
- Número de passageiros;
- Número de tripulantes;
- Número de bagagens;
- Número de aeronaves de cada tipo;
- Dentro da aba Solver coloque também, antes dos slides, o problema em 'matematiques' usando latex;
- No final da aba Solver, coloque um botão para resolver e uma caixa de texto com a saída do solver;
- Crie uma aba chamada 'Mapa' com um mapa da localização dos aeroportos na solução, com um slider por dia do ano;
- Crie uma aba chamada 'Resultados' com os resultados do solver, em tabelas. Coloque também o resultado não otimizado;
- Eu preciso saber também a quantiade de pernoites de uma aeronave em cada aeroporto.
- Desenhe a rota, ao selecionar a rota, um pop-up deve aparecer com informações sobre a rota (incluindo a aeronave e quantidade de pax e dias fora de sede);
- Mude a cor da rota caso seja uma rota de algum dia fora de sede.
- Crie um novo arquivo para este projeto, chamado main_app.py
- Utilize somente o Modelo VII
- Deixe o código bem documento usando doxygen
- Programe como um programado Senior usando Lean Code
- Antes de prosseguir, me mostre uma comparação para este projeto: Streamlit ou Shiny e eu decidirei qual o melhor.