LearnPython - Backend do App
-
Descrição
- Este repositório contém o desenvolvimento do backend do LearnPython, um aplicativo mobile focado no ensino da linguagem de programação Python através de uma abordagem interativa e gamificada. Os usuários aprendem Python de forma dinâmica, por meio de mapas, desafios e sistemas de ranking, o que torna o aprendizado mais envolvente e eficaz. O objetivo é proporcionar uma experiência divertida e educativa para iniciantes e entusiastas da programação.
-
Atualmente, o jogo está disponível para dispositivos móveis, mas o projeto será expandido para outras plataformas futuramente.
-
Tecnologias Utilizadas
- Backend:
- Linguagem: Python
- Frameworks Principais:
- FastAPI: Para a criação de APIs rápidas e eficientes.
- Pydantic: Para validação de dados e modelagem eficiente.
- Uvicorn: Como servidor ASGI para lidar com requisições de forma assíncrona e rápida.
- Backend:
-
Infraestrutura:
- Serviço de Nuvem: Google Cloud
- Hospedagem: Google Cloud Run
-
Banco de Dados:
- Banco de Dados: MongoDB, escolhido pela sua flexibilidade e escalabilidade para lidar com grandes volumes de dados e a estrutura não-relacional do jogo.
-
Objetivos do Projeto
- O LearnPython visa democratizar o acesso ao aprendizado de Python, utilizando uma metodologia baseada em desafios e progressão por níveis, onde os usuários podem aprimorar suas habilidades de programação ao longo do tempo. Este repositório se concentra na construção do backend, que lida com a lógica de negócio, autenticação, gestão de desafios e rankings.
-
Acesso à API
- A API do LearnPython está disponível para integração e testes. Para acessar a documentação interativa (Swagger UI) e explorar os endpoints disponíveis, utilize o link abaixo:
-
Documentação da API - LearnPython
-
Certifique-se de ter as credenciais corretas para autenticação, caso necessário. A API oferece suporte a diversas funcionalidades, como criação de usuários, envio de respostas de desafios, consulta de rankings, entre outros.