Este é um aplicativo web para gerenciamento de projetos e tarefas, desenvolvido em R com o framework Shiny. Ele emula a funcionalidade de quadros Kanban, popularizada por ferramentas como Trello e Asana, permitindo que equipes organizem, visualizem e acompanhem o progresso de suas atividades de forma colaborativa e intuitiva.
A aplicação é projetada para ser uma solução de produtividade self-hosted, o que significa que pode ser executada em um servidor privado, dando total controle sobre os dados e a segurança.
O sistema suporta quadros independentes para diferentes projetos ou equipes (ex: "Atividades Patrimoniais", "Engenharia e Infraestrutura").
Sistema de Colunas (Workflow):
Cada quadro é dividido em colunas que representam o fluxo de trabalho: A Fazer, Em Andamento e Concluído.
Os usuários podem mover tarefas entre as colunas com uma funcionalidade de arrastar e soltar (drag-and-drop).
Gerenciamento de Tarefas:
Criação, Edição e Exclusão: Um modal unificado permite criar novas tarefas ou editar e excluir tarefas existentes de forma segura.
Atributos Detalhados: Cada tarefa pode ter um título, uma descrição detalhada, uma data de início e de fim, e um responsável.
Níveis de Prioridade: As tarefas são classificadas por prioridade ("Baixa", "Média", "Alta", "Urgente"), cada uma com uma cor distinta para fácil identificação visual.
Colaboração e Visualização:
Atribuição de Responsáveis: Tarefas podem ser atribuídas a membros específicos da equipe.
Gerenciamento de Equipe: Uma interface de administração permite adicionar e remover pessoas da lista de membros da equipe.
Filtro por Pessoa: Cada quadro possui um filtro dinâmico que permite ao usuário visualizar apenas as tarefas atribuídas a uma pessoa específica, a "Ninguém" ou a todas as pessoas.
Frontend (Interface): Desenvolvido com Shiny, utilizando pacotes como bslib para um visual moderno e sortable para a funcionalidade de drag-and-drop.
Backend (Lógica): Toda a lógica do servidor, manipulação de dados e reatividade são controladas pelo Shiny.
Banco de Dados: As informações de tarefas e equipes são armazenadas de forma persistente em um banco de dados SQLite. Isso garante que os dados sejam salvos instantaneamente e não se percam ao fechar a aplicação, tornando-a uma ferramenta robusta e confiável.
Estrutura Modular: O código é organizado de forma modular (app.R, board_module.R, database_logic.R), o que facilita a manutenção e a expansão para adicionar novas funcionalidades no futuro.