Fluveny

A Fluveny é uma plataforma educacional dedicada a democratizar o acesso ao ensino da língua inglesa no Brasil. Seu foco está no desenvolvimento do conhecimento gramatical de forma prática, acessível e motivadora. Por meio de atividades interativas e um sistema de recompensas baseado em metas e conquistas, a plataforma incentiva o hábito de estudo diário e contínuo. A proposta pedagógica da Fluveny alia tecnologia, engajamento e flexibilidade para proporcionar uma experiência de aprendizado eficaz, especialmente voltada ao público estudante, profissional ou autodidata.

Público-alvo

A Fluveny é voltada para brasileiros que desejam aprender ou aprimorar suas habilidades na língua inglesa, especialmente aqueles que enfrentam barreiras no acesso a métodos educacionais tradicionais. O público-alvo abrange:

  • Estudantes do ensino médio e superior, que buscam reforçar o aprendizado da língua inglesa de maneira complementar às aulas formais;
  • Pessoas com interesse em reforçar conhecimentos gramaticais, com foco especial em leitura e escrita estruturadas.
  • Autodidatas, interessados em aprender de forma independente, acessível e flexível;
  • Usuários com baixo acesso a recursos financeiros, que se beneficiam do caráter gratuito e open-source da plataforma;

Descrição técnica de desenvolvimento

Tecnologias Utilizadas

Frontend

  • TypeScript: Linguagem de programação que estende o JavaScript, adicionando tipagem estática para identificação de erros em tempo de desenvolvimento.
  • React.js: Framework JavaScript moderno e eficiente para construção da interface do usuário, com suporte a componentes reutilizáveis e interações dinâmicas;
  • Tailwind CSS: Biblioteca utilitária de estilização, ideal para interfaces responsivas e personalizáveis;
  • Shadcn UI: Biblioteca de componentes reutilizáveis, para facilitar a eficiência na produção das interfaces.
  • Radix UI: Biblioteca de componentes headless para criação de componentes com UI personalizadas com reutilização de gerenciamento de estado, lógica e dados.
  • Zustand: Biblioteca para gerenciamento de estados bearbones escalável, rápida e pequena.
  • React Query: Biblioteca para busca de dados trazidas de APIs, e gerenciamento de estado assíncrono da aplicação.
  • React Testing Library: Biblioteca de integração para simulação das interações do usuário sobre a aplicação, validando o fluxo de vários componentes conjuntos.
  • Playwright: Biblioteca de automação para testes de interfaces para múltiplos navegadores, para garantir a compatibilidade em diferentes ambientes.
  • Zod: Biblioteca para validação de dados, utilizada para garantir que os dados estejam no formato esperado para garantir segurança ao sistema.
  • Framer Motion: Biblioteca de animação, permite criar transições, animações interativas e efeitos visuais para trazer uma interface envolvente.

Backend

  • Java: Linguagem de programação robusta, orientada a objetos, amplamente utilizada no desenvolvimento de aplicações escaláveis e seguras.
  • Spring: Framework para desenvolvimento Java com suporte modular para criação de aplicações corporativas de forma estruturada e padronizada.
  • Spring Security: Módulo do Spring voltado para autenticação e controle de acesso, garantindo segurança em endpoints e fluxos sensíveis.
  • Spring Boot: Extensão do Spring que facilita a configuração e o desenvolvimento de aplicações Java com inicialização automática e convenções.
  • Spring Data: Abstração de acesso a dados no ecossistema Spring, permitindo integração simplificada com banco de dados relacionais e não relacionais.
  • Swagger/OpenAPI:
  • Junit: Framework de testes unitários para Java, utilizado para garantir o funcionamento correto de componentes isolados da aplicação.
  • Mocking: Biblioteca utilizada para simular dependências externas durante os testes, permitindo validação de lógica isolada sem efeitos colaterais.

Infraestrutura/Banco de dados

  • Docker/Docker Compose: Ferramentas de conteinerização que permite empacotar e isolar serviços da aplicação, garantindo portabilidade e padronização do ambiente de execução.
  • Github Actions: Ferramenta de integração e entrega contínua (CI/CD) integrada ao GitHub, automatizando testes, builds e deploys da aplicação.
  • MongoDB: Banco de dados NoSQL orientado a documentos, ideal para armazenar dados flexíveis, escaláveis e com estrutura dinâmica, como conteúdo, usuários e progresso.

Ferramentas auxiliares

  • Git: Sistema de controle de versão distribuído, utilizado para rastrear mudanças no código-fonte durante o desenvolvimento colaborativo.
  • Github: Plataforma para hospedagem de repositórios Git com suporte a colaboração, revisão de código, CI/CD e gerenciamento de issues.
  • Jira: Ferramenta de gestão ágil de projetos, usada para organizar tarefas, user stories, sprints e acompanhar o progresso de desenvolvimento.

Equipe

Equipe de desenvolvimento

  • Felipe Araújo Correia (DESENVOLVEDOR BACKEND)
  • Gustavo Borin Nascimento (DESENVOLVEDOR BACKEND)
  • Leonardo Bonardi Marques Silva (DESENVOLVEDOR BACKEND)
  • Maicon Almeida Mian (DESENVOLVEDOR BACKEND)
  • Rodrigo Luiz Gasparino Lucatelli (DESENVOLVEDOR FRONTEND)
  • Vinicius Henrique Piotto Boiago (DESENVOLVEDOR FRONTEND/DEVOPS)

Equipe de gestão

  • Abner Gomes Guimarães (PRODUCT OWNER)
  • Pedro Henrique Botelho da Silva (SCRUM MASTER)

Contato

Para informações/dúvidas acerca deste projeto de prestação de serviços, solicita-se contactar o seu coordenador ou orientador:

Coordenador: Tiago Silveira

Orientador: Rodrigo Martins Pagliares