Code Monkey home page Code Monkey logo

ft_transcendence's Introduction

Hi, nice to meet you Sunglasses emoji

Basecamp sky

Welcome to my page!

I'm Patricia, Fullstack developer from The Japanese flag is made up of a red circle, against a white background. Japan, currently living in The Brazilian flag is bright green with a yellow diamond in the center filled with a blue globe. Brazil.


Talking about Personal Stuffs

  • 👩🏻‍🚀 I'm cadet at 42SP;

  • 👩🏻‍💻 I’m currently working on something cool 😉;

  • 🌱 I’m currently learning Algorithm in C Language, Angular;

  • 💬 Ask me about anything, I am happy to help;

  • 🏆 My favorite challenge is CSS 30 days;

Where to find me:

My linkedin My e-mail



My Development Stack

Application and Data

c Javascript Typescript Nodejs HTML5 CSS Bootstrap React Angular MySQL PostegreSQL MongoDB

Utilities

Insomnia Postman

DevOps

GitHub Bitbucket Git Docker VirtualBox

Business Tools

Jira ClickUp Notion Trello


My latest posts



Coding Activity


Mitsu325's github stats


ft_transcendence's People

Contributors

marcocslima avatar mitsu325 avatar nandajfa avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

marcocslima

ft_transcendence's Issues

[Front] Página login (campos formulário)

Página de login do site

Requisitos

  1. Ter um formulário para informar os dados: (e-mail ou username) e senha
  2. Validação dos dados de entrada
  3. Feedback visual: fornecer feedback visual claro para indicar se o registro foi bem-sucedido ou se houver erros no processo
  4. Integração com backend:
    • URI do servidor: /login
    • Método HTTP: POST
    • Exemplo de dados enviados:
    {
         "user": "Nome do Usuário ou e-mail",
         "password": "test123!"
    }
    • Resposta do servidor: no caso de sucesso será retornado success: true e no caso de erro success: false. Importante é que sempre será retornado message` para ser impresso uma mensagem para o usuário
  5. Redirecionamento: após um registro bem-sucedido, redirecionar o usuário para a página inicial do jogo (/home)

Observação

  • Utilizar os componentes do Ant Design
  • Tela resposiva

Criar canal (sala) de chat público, privado e com senha: front e back

Tabela de canais:

Image

Tabela de mensagens:

Image

FRONT.

  • Página principal dos canais e chat.
  • Criar canal público, protegido ou privado.
  • Exibir canais criados.
  • Exibir mensagens de cada canal.
  • Enviar mensagem para cada canal.
  • Definir o criador do canal como proprietário

BACK

  • Criar canal.
  • Listar canais.
  • Verificar senha de canal protegido.
  • Sockets.

[Back] Criação de usuário (Cadastro no Form)

Implementar a lógica no backend para processar o registro de novos usuários no site de concurso Pong.

Requisitos

  1. Endpoint da API: criar um endpoint POST em /user
  2. Validação de dados: validar se foi enviado os campos: name, email, password
  3. Senha segura: deve ter no mínimo 8 caracteres, incluir pelo menos uma letra maiúscula, uma letra minúscula, um número e um caractere especial
  4. Validação de e-mail único: verificar se o e-mail informado já existe no banco. Se existir, retornar um erro informando que e-mail já foi cadastrado
  5. Armazenar informações no banco: criar um registro no banco de dados do usuário. É importante criptografar a senha
  6. Resposta da API: fornecer uma resposta adequada no formato JSON. No caso de sucesso retorna success: true e no caso de erro success: false. É importante informar um message porque essa informação será usada para imprimir ao candidato uma mensagem

Observação

  • Usar algoritmos de hash seguros para salvar a senha
  • Garantir que todas as exceções sejam tratadas adequadamente

Enviar mensagem direta para outro usuário: front e back

Criar a seguinte tabela:
Image

Etapas de desenvolvimento

  1. API
    • Enviar Mensagem
    • Listar todas as pessoas com quem já conversou
    • Buscar todas as mensagens já trocada com uma pessoa
    • Listar todas as pessoas que possuem conta
  2. Página de chat
    • Listar as pessoas que já conversei
    • Ter mecanismo de busca para iniciar uma conversa
    • Enviar mensagem
    • Exibir as mensagens já trocadas
  3. Integração de Socket (garantir que a conversa aconteça em tempo real)

Fix: user_create

  • Criar uma pasta utils e adicionar a função hashPassword.
  • Incluir na modelagem o campo email.
  • Validar o campo email.

[Front] Login com oauth intra 42

Permitir o login por meio do oauth intra 42

Requisitos

  1. Ter um botão que permita o login pela intra 42
  2. Fazer a requisição da API intra 42: https://api.intra.42.fr/apidoc/2.0/users/index.html
  3. Feedback visual: fornecer feedback visual claro para indicar se o registro foi bem-sucedido ou se houver erros no processo
  4. Integração com backend:
    • URI do servidor: /login/42
    • Método HTTP: POST
    • Exemplo de dados enviados:
    {
         ... Verificar na api 42
    }
    • Resposta do servidor: no caso de sucesso será retornado success: true e no caso de erro success: false. Importante é que sempre será retornado message` para ser impresso uma mensagem para o usuário
  5. Redirecionamento: após um registro bem-sucedido, redirecionar o usuário para a página inicial do jogo (/home)

Observação

  • Utilizar os componentes do Ant Design
  • Tela resposiva

[Back] Modelagem de usuários

Implementar a estruturas de dados do modelo de usuários

Requisitos

A modelagem deve conter os seguintes campos:

  • id: identificador (campo único)
  • name: nome do usuário
  • username: identificação do usuário. Não pode conter caracter de espaço (campo único)
  • password: senha criptografada
  • avatar: foto do usuário
  • two_factor_auth: se permite ou não dois fatores de autenticação (boolean)
  • created_at: data de criação do registro
  • updated_at: data de atualização do registro

Link diagrama

[Back] Login do usuário (campos formulário)

Implementar a lógica no backend para verificar se o usuário possui uma conta registrada.

Requisitos

  1. Endpoint da API: criar um endpoint POST em /login
  2. Validação de dados: validar se foi enviado os campos: user (pode ser e-mail ou username), password
  3. Verificar se possui conta e se a senha é válida
  4. Resposta da API: fornecer uma resposta adequada no formato JSON. No caso de sucesso retorna success: true e no caso de erro success: false. É importante informar um message porque essa informação será usada para imprimir ao candidato uma mensagem

Observação

  • Garantir que todas as exceções sejam tratadas adequadamente

[Back] Login com oauth intra 42

Implementar a lógica no backend para verificar se o usuário possui uma conta registrada.

Requisitos

  1. Endpoint da API: criar um endpoint POST em /login/42
  2. Validação de dados: ... (entender api 42)
  3. Verificar se o usuário foi salvo no banco por meio do e-mail, se não cadastrar
  4. Resposta da API: fornecer uma resposta adequada no formato JSON. No caso de sucesso retorna success: true e no caso de erro success: false. É importante informar um message porque essa informação será usada para imprimir ao candidato uma mensagem

Observação

  • Garantir que todas as exceções sejam tratadas adequadamente

Sessão do usuário

Proteger as rotas que só podem ser acessadas com autenticação.

Proteger o back: rotas privadas

[Front] Criar painel do jogo

Desenvolver a interface do usuário para a página principal do jogo.

  • Menu lateral com as páginas do user, chat e game.
  • Navegação entre as páginas
  • Menu:
    Home
    Opções de jogo
    Perfil do usuário
    - Dados de cadastro
    - Estatísticas
    - Histórico de partidas
    Amigos
    Chat
    - Criar chat
    - Enviar mensagem
    - Gerenciar usuários
    - Perfil de jogadores

[Front] Página Home

Página de apresentação do site de concurso Pong

Requisitos

  1. A página precisa ter botão que direciona para a página de Login (/login) e outro botão que direciona para a página de criação de conta (/signup)
  2. Texto de saudação

Observação

  • Utilizar os componentes do Ant Design
  • Tela resposiva

[Front] Página de registro de usuário

Desenvolver a interface do usuário para o processo de registro de novos usuários no site de concurso de Pong.

Requisitos

  1. Campos do Formulário: o formulário deve incluir os campos para nome, endereço de e-mail ou username, e senha
  2. Validação: implementar validação de entrada
  3. Implementar validação de senha segura: deve ter no mínimo 8 caracteres, incluir pelo menos uma letra maiúscula, uma letra minúscula, um número e um caractere especial
  4. Feedback visual: fornecer feedback visual claro para indicar se o registro foi bem-sucedido ou se houver erros no processo
  5. Integração com backend: - URI do servidor: /user - Método HTTP: POST
    • Exemplo de dados enviados:
    {
         "name": "Nome do Usuário",
         "username": "[email protected]",
         "password": "test123!"
    }
    • Resposta do servidor: no caso de sucesso será retornado success: true e no caso de erro success: false. Importante é que sempre será retornado message` para ser impresso uma mensagem para o usuário
  6. Redirecionamento: após um registro bem-sucedido, redirecionar o usuário para a página inicial do jogo (/home)

Observação

  • Utilizar os componentes do Ant Design
  • Tela resposiva

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.