{{ currentTitle }}

{{ user.name.charAt(0) }}

Dashboard

Visão geral do desempenho da sua escola.

group
Total

Alunos Ativos

{{ stats.students }}

menu_book
Ativos

Cursos

{{ stats.courses }}

school
Docentes

Professores

{{ stats.teachers }}

trending_up
24h

Matrículas Hoje

{{ stats.enrollments_today }}

history Últimas Atividades

Nenhuma atividade registrada ainda.
{{ log.user_initials }}

{{ log.user_name }}

{{ log.user_role }}
{{ log.action }}

{{ log.description }}

{{ log.time_ago }}
security

Modo Seguro

As alterações feitas neste painel são aplicadas instantaneamente para todos os usuários.

Relatórios

Exporte a lista completa de alunos e seu progresso acadêmico.

Meus Cursos

Gerencie o catálogo de aulas da sua escola.

smartphone Experiência Vertical (Reels)

smartphone Reels
image
{{ course.status === 'published' ? 'Publicado' : 'Rascunho' }}

{{ course.title }}

{{ course.description || 'Sem descrição.' }}

school Cursos Tradicionais

image
{{ course.status === 'published' ? 'Publicado' : 'Rascunho' }}

{{ course.title }}

{{ course.description || 'Sem descrição.' }}

Nenhum curso encontrado

search
{{ student.initials }}

{{ student.name }}

{{ student.email }}

{{ student.status === 'active' ? 'Ativo' : 'Pendente' }}

Matrículas ({{ student.enrolled_courses?.length || 0 }})

{{ course.title }}
+{{ student.enrolled_courses.length - 2 }}
history

{{ student.last_activity.description }}

Há {{ student.last_activity.time_ago }}

{{ member.name.charAt(0) }}

{{ member.name }}

{{ member.email }}

{{ member.role === 'tenant_admin' ? 'Administrador' : (member.role_name || 'Professor') }}
shield Sistema

Administrador

Acesso total a todas as funcionalidades do sistema e configurações globais.

history_edu Sistema

Professor

Pode criar cursos, gerenciar conteúdos, alunos e interagir na comunidade.

Gestão de Cursos Ver Alunos Comunidade
school Sistema

Aluno

Acesso à área de aprendizado, visualização de aulas e participação em grupos.

Acessar Aulas Ver Progresso
badge

{{ role.name }}

{{ role.permissions.length }} Capacidades Ativas

{{ translatePerm(perm) }} +{{ role.permissions.length - 4 }} mais

{{ customLabels.group_plural }}

Organize seus alunos em grupos para facilitar a gestão.

{{ group.name.charAt(0).toUpperCase() }}

{{ group.name }}

{{ group.description || 'Sem descrição.' }}

group {{ group.student_count }} alunos
Acessar {{ customLabels.group_singular }} arrow_forward
groups

Nenhuma turma criada

arrow_back

{{ currentGroup.name }}

Comunidade da Turma

{{ user.name.charAt(0) }}
forum

Nenhuma postagem ainda

Seja o primeiro a publicar algo para a turma!

{{ post.author_name.charAt(0) }}

{{ post.author_name }}

Admin • {{ new Date(post.created_at).toLocaleDateString() }}

{{ post.content }}
assignment
{{ post.title }}

Atividade Avançada

visibility Visualizar
{{ comment.author_name.charAt(0) }}

{{ comment.author_name }}

{{ comment.content }}

Sobre a Turma

{{ currentGroup.description || 'Sem descrição.' }}

Membros ({{ groupMembers.length }})

{{ member.name.charAt(0) }}
+{{ groupMembers.length - 12 }}
link

Link de Convite

Envie este link para os alunos entrarem automaticamente.

Financeiro

Gerencie suas receitas e sua assinatura.

account_balance

Configurar Conta Asaas

Conecte sua conta do Asaas para receber os pagamentos dos alunos diretamente. O dinheiro cairá na sua conta, sem intermediários.

Você encontra esta chave em sua conta Asaas > Configurações da Conta > Integrações.

warning

Certifique-se de que sua conta no Asaas está aprovada para receber pagamentos via Cartão e PIX.

Criar Conta no Asaas
attach_money
Total

Receita Confirmada

R$ {{ financeStats.total.toFixed(2).replace('.', ',') }}

pending
A Receber

Pendente

R$ {{ financeStats.pending.toFixed(2).replace('.', ',') }}

savings

Saque Disponível

R$ {{ (financeStats.total * 0.95).toFixed(2).replace('.', ',') }}

Histórico de Transações

Aluno Curso Valor Data Status
Nenhuma transação encontrada.
{{ t.student }} {{ t.course }} R$ {{ t.amount.toFixed(2).replace('.', ',') }} {{ t.date }} check Pago schedule Pendente close Falhou
verified
Plano Atual

{{ subscriptionInfo.plan_id === 'pro' ? 'Profissional' : 'Básico' }}

R$ {{ subscriptionInfo.plan_id === 'pro' ? '149,00' : '49,00' }} /mês
check_circle Alunos Ilimitados
check_circle 5 Admins
check_circle API & Webhooks

credit_card Forma de Pagamento

•••• •••• •••• {{ subscriptionInfo.card_last4 }}

{{ subscriptionInfo.card_brand }} STATUS: {{ subscriptionInfo.subscription_status.toUpperCase() }}
add_card

Nenhum cartão cadastrado

Próxima Fatura

{{ new Date(subscriptionInfo.next_due_date).toLocaleDateString('pt-BR', {day: '2-digit', month: 'long', year: 'numeric'}) }}

Histórico de Faturas

Data Valor ID Status
Nenhuma fatura encontrada.
{{ inv.date }} R$ {{ inv.amount.toFixed(2).replace('.', ',') }} {{ inv.id }} Pago

Registro de Presença

Selecione a turma e a data para realizar a chamada.

Total Alunos

{{ attendanceStudents.length }}

Presentes

{{ attendanceStudents.filter(s => s.status === 'present').length }}

Faltas

{{ attendanceStudents.filter(s => s.status === 'absent').length }}

{{ student.name.charAt(0) }}

{{ student.name }}

{{ student.email }}

groups Selecione uma turma para carregar a lista de alunos.

Agenda Escolar

Gerencie provas, eventos e datas importantes.

event_busy

Nenhum evento agendado

Comece adicionando provas ou feriados escolares.

{{ new Date(event.start_at).toLocaleString('pt-BR', { month: 'short' }) }} {{ new Date(event.start_at).getDate() }}
{{ event.event_type === 'exam' ? 'Prova' : (event.event_type === 'holiday' ? 'Feriado' : (event.event_type === 'deadline' ? 'Entrega' : 'Evento')) }} Turma: {{ getGroupName(event.target_id) }}

{{ event.title }}

{{ event.description }}

schedule {{ new Date(event.start_at).toLocaleTimeString('pt-BR', {hour:'2-digit', minute:'2-digit'}) }} location_on {{ event.location }}
calendar_today

Dica Pedagógica

Agende provas com pelo menos 7 dias de antecedência para que os alunos possam se organizar no dashboard deles.

Legenda

Provas / Avaliações
Feriados / Recessos
Eventos Gerais
Prazos de Entrega

Agendar Evento

Identidade Visual

Gerencie como sua marca é percebida pelos alunos.

identity_platform

Ativos de Marca

add_photo_alternate

Upload Logo

Alterar
broken_image

Visível na aba do navegador.

palette

Cores e Estilo

Cor Principal

Cor Secundária

visibility

Preview Instantâneo

{{ (schoolSettings.name || 'T')[0] }}
Botão Primário

Esta é uma representação simplificada de como as cores e logo serão aplicadas no portal.

view_carousel

Banners da Página Inicial

Destaque conteúdos importantes com carrosséis cinematográficos.

image_not_supported

Nenhum banner configurado

O sistema usará o primeiro curso como destaque padrão.

Alterar Imagem

Páginas Institucionais

Gerencie o conteúdo do seu site público.

article

{{ page.title }}

/{{ page.slug }} Publicado Rascunho
visibility

Sugestões de Páginas

Adicione páginas essenciais com um clique.

info

Sobre Nós

Conte a história e a missão da sua escola.

contact_support

Fale Conosco

Canais de atendimento e localização.

gavel

Termos de Uso

Regras, política de privacidade e LGPD.

Instalar Novo Tema

Faça upload de um arquivo ZIP contendo o tema do portal do aluno.

dashboard
check_circle Ativo

{{ theme.name }}

v{{ theme.version }}

{{ theme.description }}

{{ theme.author[0] }}
{{ theme.author }}
download
menu_book Guia Técnico

Guia de Desenvolvimento de Temas
Eduflix v3 Ecosystem

Aprenda a criar e personalizar temas imersivos utilizando nossa arquitetura baseada em componentes Vue.js e Pinia.

list_alt Sumário

01 Introdução ao Sistema

O portal do aluno utiliza uma arquitetura moderna onde cada "tema" é um conjunto de arquivos .js e .html localizados em public/app/templates/[nome-do-tema]/views/. A store.js atua como a fonte única de verdade para o estado global da aplicação.

02 Estrutura de Arquivos

grid_view

Views Principais

  • Home.js: Dashboard do Aluno
  • CourseDetail.js: Página do Curso
  • LessonPlayer.js: Player de Aulas
extension

Views de Apoio

  • Activities.js, Bulletin.js
  • Calendar.js, Community.js

03 Acesso a Dados (Store)

Importe a useMainStore para acessar o estado global do Pinia dentro do seu componente:

import { useMainStore } from '../../../js/store.js';

export default {
    setup() {
        const store = useMainStore();
        return { store };
    }
}

04 Recursos por Página

Home & Grid de Cursos

Exibe banners e carrosséis de conteúdo.

Variáveis Principais

featuredCourse Object
continueWatching Array
filteredCourses Array

Métodos Úteis

store.goCourse(id) Router
getModuleThumbnail(m) Helper

05 Implementando Minutagem

A duração é armazenada em segundos (duration_seconds). Use os formatadores abaixo para exibir o tempo de forma amigável:

// Exemplo: Exibir duração da aula
<span>{{ formatDuration(lesson.duration_seconds) }}</span>

06 Thumbnails Dinâmicos

O sistema prioriza a imagem enviada, mas pode extrair automaticamente do YouTube se necessário.

lightbulb
Dica de Performance Sempre use o helper getLessonThumbnail(lesson). Ele gerencia o fallback para a imagem do curso caso a aula não tenha vídeo ou thumb própria.

07 Diretrizes Gerais

check_circle
Use Tailwind CSS (v3+) para estilização rápida e responsiva.
check_circle
Delegue chamadas de API para a Store, nunca direto no componente.
check_circle
Mantenha a reatividade usando Computed Properties sempre que possível.
check_circle
Teste o tema em diferentes tamanhos de tela (Mobile First).

Configurações Gerais

Ajustes técnicos e fundamentais da sua escola.

Usada para geração automática de cursos e feedbacks de IA.

Domínio Próprio

Use seu próprio endereço para o portal do aluno.

DomínioStatusAções
{{ d.domain }}Padrão
verified Ativo
verified Conectado
schedule DNS Pendente
error Erro

Instruções DNS

1. Tipo CNAME

Crie um registro CNAME no seu provedor.

2. Nome / Host

Use seu subdomínio (ex: ead).

3. Destino

plataforma.tutoread.com.br

* Propagação: 2h a 24h.

construction

Módulo em Desenvolvimento

O recurso {{ currentTitle }} estará disponível em breve.

Histórico do Aluno

{{ selectedStudentForHistory?.name }}

Nenhuma atividade registrada para este aluno.
history

{{ log.details }}

{{ log.action }} {{ log.formatted_date }}

Novo Curso

Novo Membro da Equipe

Capacidades deste acesso:

{{ translatePerm(p) }}

Gerenciar Curso

{{ editingCourse?.title }}

R$

O formato Reels é otimizado para vídeos curtos e verticais.

image

Postagem de Boas-vindas

Monte uma recepção incrível para seus alunos.

image_search Escolher da Galeria

Inserir novo elemento

campaign

Postagem desativada

Ative a chave no topo para começar a criar seu mural de boas-vindas.

Alunos Matriculados

Gerencie quem tem acesso a este curso.

school

Nenhum aluno matriculado

Use o botão acima para adicionar alunos a este curso.

Aluno Email Progresso Ações
{{ student.name.charAt(0) }}
{{ student.name }}
{{ student.email }}
0% Concluído

Editor Avançado de Conteúdo

Ambiente dedicado para criação imersiva.

Abrir Construtor 🚀

Estrutura do Curso

Organize suas aulas em módulos.

Nenhum módulo criado ainda.

folder
widgets
{{ getIcon(lesson.type) }} expand_more

Conteúdo: {{ lesson.type }}

build Editar no Construtor Avançado
Unidade vazia.
{{ getIcon(lesson.type) }} expand_more

Conteúdo: {{ lesson.type }}

build Editar no Construtor Avançado
Nenhum conteúdo neste módulo.

{{ editingStudent ? 'Editar Aluno' : 'Matricular Novo Aluno' }}

Passo {{ studentModalStep }} de 3

Dados Pessoais

Dados de Acesso

Matrículas

Nenhum curso disponível.

Compartilhar Acesso

share

Enviar dados para {{ sharingStudent?.name }}

Gere um link temporário para que o aluno possa acessar a plataforma sem digitar senha.

Link de Acesso Direto

timer Válido por 7 dias

{{ editingGroup ? 'Editar' : 'Nova' }} {{ customLabels.group_singular }}

Adicionar Alunos à {{ customLabels.group_singular }}

Nenhum aluno cadastrado na escola.
{{ selectedStudentsToAdd.length }} selecionados

Configurar Cargo

Defina o nome e as capacidades deste nível de acesso.

Matriz de Permissões

Carregando capacidades...

{{ group.label }}

{{ editingPage ? 'Editar Página' : 'Nova Página' }}

/

code Aceita HTML Básico

Atualizar Cartão

/
lock

Seus dados são criptografados e tokenizados diretamente pelo Asaas. Nós não armazenamos o número do seu cartão.