Skip to content

Apresentando o Novo Site Alyonka.app

Tenho o prazer de anunciar o lançamento do novo site alyonka.app — uma plataforma interativa de aprendizagem de línguas e presença profissional online desenvolvida para Alyona Novikova, professora de inglês e português sedeada em Cascais e Lisboa, Portugal.

O que começou como uma simples ideia de flashcards evoluiu para uma aplicação web full-stack completa que combina exercícios educativos interativos (jogos de correspondência, palavras-cruzadas dinâmicas e questionários) com uma moderna página de apresentação e um sistema administrativo de criação de conteúdos.


O que é o Alyonka.app?

A plataforma cumpre dois objetivos principais:

  1. Página da Professora e Marcação de Aulas: Um espaço online para alunos que procuram aulas de inglês e português (online para todo o mundo ou presenciais em Lisboa e Cascais). Dispõe de suporte multilingue (inglês, português, russo, ucraniano, alemão, francês), pormenores pedagógicos, testemunhos e opções de contacto direto.
  2. Motor de Exercícios Interativos: Um ambiente de prática gamificado onde os alunos podem reforçar vocabulário, gramática e compreensão auditiva através de exercícios dinâmicos.

Funcionalidades de Aprendizagem Interativa

1. Jogos de Correspondência (Match-Up)

O leitor Match-Up permite aos alunos associar palavras, frases, definições e imagens. Inclui animações suaves, acompanhamento de progresso e confetes ao concluir com sucesso.

2. Palavras-Cruzadas Procedurais

A plataforma inclui um gerador automático de palavras-cruzadas que dispõe palavras e pistas numa grelha ideal interligada. O leitor interativo oferece:

  • Navegação por teclado e ecrãs táteis
  • Pistas e explicações detalhadas para cada termo
  • Temas visuais personalizados
  • Validação imediata e verificação de respostas

3. Questionários Interativos (Quizzes)

Suporte para perguntas de escolha única e múltipla, explicações enriquecidas e resumos detalhados de pontuação.

4. Catálogo de Exercícios com Pesquisa

Os alunos podem pesquisar e filtrar exercícios por título, categoria, etiquetas e nível de idioma.


Stack Tecnológico e Arquitetura

CamadaTecnologia
Framework FrontendSvelteKit 2 + Svelte 5 (Runes)
EstilosTailwind CSS v4
Backend e SSRSvelteKit (@sveltejs/adapter-node)
Base de DadosPostgreSQL + Kysely (Construtor de consultas tipado)
AutenticaçãoBetter Auth (@better-auth/kysely-adapter)
Processamento de ImagensSharp (otimização e conversão WebP)
TestesVitest + Testcontainers (PostgreSQL)
ImplementaçãoDocker e Docker Compose
ObservabilidadePino structured logger + métricas Prometheus

Destaques de Engenharia

Runas do Svelte 5 para Gestão de Estado

Os leitores de exercícios tiram partido do novo modelo de reatividade do Svelte 5 com runas ($state, $derived, $props). Isto torna a gestão de estados complexos (posições de cursor nas palavras-cruzadas, histórico de seleções, temporizadores) limpa e direta.

Camada de Dados Tipada com Kysely

Todas as operações de base de dados são estritamente tipadas. As migrações são executadas via scripts TypeScript e os testes de integração utilizam o Testcontainers para instanciar bases de dados PostgreSQL isoladas.

Otimização Automática de Imagens

Ao carregar imagens ou gerar ilustrações com IA, os ficheiros são automaticamente redimensionados e convertidos para o formato WebP através do Sharp.


Ligações do Projeto