O Biko é um sistema de gestão de cursinhos populares, desenvolvido para atender às demandas da Uneafro Brasil. Inicialmente criado em Drupal 7, foi portado para Laravel para oferecer maior flexibilidade e escalabilidade.
Biko é uma aplicação web que centraliza e simplifica processos acadêmicos e administrativos, promovendo eficiência e acessibilidade para todos os envolvidos.
- Instruções de Instalação
- Instruções de Utilização
- Credenciais para Teste
- Funcionalidades
- Cargos da Aplicação
- Estrutura do projeto
A seguir uma visão resumida da estrutura principal do projeto e a função das pastas mais relevantes:
biko/
├── .env.example # Exemplo de variáveis de ambiente
├── .gitignore # Regras de ignore do Git
├── artisan # CLI (Artisan)
├── composer.json # Dependências PHP e autoload (Composer)
├── composer.lock # Versões travadas das dependências
├── package.json # Dependências frontend (npm)
├── package-lock.json # Lockfile npm/yarn.lock também presente
├── Dockerfile # Imagem para container
├── README.md # Este documento
├── app/ # Código da aplicação (Models, Controllers, Services)
│ ├── Console/ # comandos Artisan customizados
│ ├── Events/
│ ├── Exceptions/
│ ├── Exports/ # classes para exportação (Excel/CSV)
│ ├── Http/
│ │ ├── Controllers/ # controllers web/API
│ │ ├── Middleware/ # middlewares (auth, roles, etc.)
│ │ └── Requests/ # Form requests / validação
│ ├── Imports/ # classes de importação (Excel)
│ ├── Listeners/ # listeners de eventos
│ ├── Mail/ # Mailable classes
│ ├── Models/ # Eloquent models e related
│ ├── Providers/ # Service providers
│ └── Services/ # Lógica de negócio reaproveitável
├── bootstrap/ # Bootstrapping (app.php, cache)
│ └── cache/
├── config/ # Arquivos de configuração Laravel (app, auth, queue...)
├── database/ # Migrations, seeders, factories e scripts
│ ├── factories/
│ ├── migrations/ # muitas migrations para as tabelas do sistema
│ ├── seeders/ # seeders (Administrador, Alunos, Professores...)
│ └── scripts/ # utilitários SQL
├── public/ # Front controller e assets públicos compilados
│ ├── index.php # entrada pública
│ ├── css/
│ ├── js/
│ ├── fonts/
│ └── dist/ # assets compilados (tabler, libs, imgs, js, css)
├── resources/ # assets não compilados, views e traduções
│ ├── js/
│ ├── sass/
│ ├── lang/ # pt_BR, en
│ └── views/ # Blade templates (alunos, professores, layouts...)
│ ├── layouts/
│ ├── alunos/
│ ├── professores/
│ ├── coordenadores/
│ └── (várias outras pastas por funcionalidade)
├── routes/ # Definição de rotas (web.php, api.php, channels.php, console.php)
├── storage/ # Uploads, cache, sessions e logs
│ ├── app/
│ ├── framework/
│ └── logs/
├── tests/ # Testes (Feature, Unit)
├── vendor/ # Dependências gerenciadas pelo Composer
├── vite.config.mjs # Config do Vite (frontend)
└── phpunit.xml # Configuração de testes
- PHP >= 8.0
- Composer
- Banco de dados (MySQL, PostgreSQL, etc.)
- Node.js e npm
-
Clone o repositório:
git clone https://github.com/Quijaua/Biko.git cd Biko -
Instale as dependências do PHP:
composer install
-
Instale as dependências do Node.js:
npm install
-
Configure o arquivo
.env:- Copie o arquivo de exemplo:
cp .env.example .env
- Edite o arquivo
.envcom as credenciais do banco de dados e outras configurações.
- Copie o arquivo de exemplo:
-
Gere a chave da aplicação:
php artisan key:generate
-
Execute as migrações:
php artisan migrate
-
Inicie o servidor:
php artisan serve
Após iniciar o servidor, abra o navegador e acesse: http://localhost:8000.
Após a instalação, utilize as credenciais abaixo para acessar o sistema e explorar suas funcionalidades:
-
Administrador
- Email:
admin@biko.edu - Senha:
admin@biko.edu
- Email:
-
Aluno A
- Email:
alunoa@biko.edu - Senha:
alunoa@biko.edu
- Email:
-
Aluno B
- Email:
alunob@biko.edu - Senha:
alunob@biko.edu
- Email:
-
Coordenador A
- Email:
coordenadora@biko.edu - Senha:
coordenadora@biko.edu
- Email:
-
Coordenador B
- Email:
coordenadorb@biko.edu - Senha:
coordenadorb@biko.edu
- Email:
Essas credenciais são geradas automaticamente pelas seeders durante o processo de migração do banco de dados.
-
Gerenciamento de Estudantes
Permite cadastrar, editar e gerenciar informações dos estudantes, incluindo frequência. -
Gerenciamento de Professores
Permite cadastrar, editar e gerenciar informações dos professores, incluindo disciplinas atribuídas e horários de aula. -
Gerenciamento de Coordenadores
Permite cadastrar, editar e gerenciar informações dos coordenadores, responsáveis por supervisionar núcleos e disciplinas. -
Funcionalidade de Apoio Emocional
Estudantes podem solicitar apoio psicológico diretamente pelo sistema. Inclui funcionalidades para registro de prontuários e gerenciamento de agendas dos psicólogos. -
Gerenciamento de Profissionais Psicólogos
Permite cadastrar, editar e gerenciar informações dos psicólogos, incluindo supervisão de atendimentos e relatórios. -
Adição de Núcleos de Cursinhos Físicos
Permite adicionar e gerenciar núcleos físicos, organizando disciplinas, professores e turmas de forma centralizada. -
Adição de Núcleos Virtuais
Permite criar núcleos virtuais onde os alunos podem assistir aulas online. Inclui a funcionalidade para os alunos marcarem se assistiram ou não as aulas, possibilitando o gerenciamento de visualização. -
Gerenciamento de Aulas por Matérias
Permite organizar e gerenciar aulas com base nas matérias, facilitando o planejamento e acompanhamento. -
Acompanhamento de Métricas por Dashboard
Inclui dashboards para visualização de métricas e relatórios, como desempenho dos alunos, frequência e outros dados relevantes. -
Funcionalidade EAD
Permite agendar e gerenciar eventos de ensino a distância, incluindo aulas e atividades online. -
Login sem Senha
Permite que os usuários acessem o sistema utilizando métodos alternativos, como links mágicos enviados por email, garantindo praticidade e segurança. -
Acessibilidade e Inclusão
O sistema foi projetado com foco em acessibilidade e inclusão e sempre está evoluindo cada vez mais nesse quisito. Inclui suporte a contraste adequado para pessoas com baixa visão e campos de cadastro específicos para pessoas de diversas etnias, territórios, comunidades e para pessoas com deficiência (PCD), promovendo maior representatividade e equidade. -
Muito Mais
A aplicação oferece diversas outras funcionalidades para atender às necessidades acadêmicas e administrativas, como geração de relatórios, envio de mensagens e integração com sistemas externos.
- Responsável por gerenciar toda a aplicação.
- Permissões: Gerenciar usuários, configurar o sistema, acessar relatórios completos.
- Gerencia disciplinas, professores e alunos de um núcleo específico.
- Permissões: Criar e editar disciplinas, atribuir professores, visualizar relatórios do núcleo.
- Responsável por ministrar aulas, adicionar materiais e gerenciar frequência dos alunos.
- Permissões: Registrar frequência, enviar materiais didáticos, visualizar estudantes, coordenadores, núcleos, núcleos virtuais e criar eventos.
- Usuário final que acessa conteúdos e informações relacionadas às suas disciplinas.
- Permissões: Visualizar materiais, frequência, enviar mensagens e pedir auxilio emocional.
- Oferece suporte psicológico aos alunos.
- Permissões: Registrar atendimentos, acessar histórico de suporte, gerenciar prontuários.
- Supervisiona os atendimentos psicológicos realizados pelos psicólogos.
- Permissões: Revisar atendimentos, acessar relatórios detalhados, gerenciar prontuários.