"RocketNotes" é uma aplicação web que permite aos usuários gerenciar suas notas e links úteis de forma eficiente. A aplicação possui uma interface de usuário intuitiva e recursos essenciais para criação, edição e exclusão de notas, pesquisa de notas com base em tags e títulos, além de recursos de perfil de usuário e autenticação.
A aplicação requer um back-end para fornecer as seguintes funcionalidades essenciais:
Autenticação
: O back-end deve oferecer autenticação de usuário, permitindo que os usuários façam login com segurança e mantenham sessões ativas.Gestão de Usuários
: O back-end deve permitir o cadastro e atualização de informações de usuário, como nome, e-mail, senha e imagem de perfil.Gestão de Notas
: Deve ser possível criar, editar, visualizar e excluir notas. As notas podem incluir títulos, descrições, links e tags.Pesquisa de Notas
: Os usuários devem ser capazes de pesquisar notas com base em títulos e tags.Segurança
: Deve haver medidas de segurança, como a geração e validação de tokens JWT (JSON Web Tokens) para proteger as rotas e dados sensíveis.
POST / Create
(Criação de um novo token Jwt que será necessário para as requisições):
{
"email": "seu_email",
"password": "sua_senha"
}
PATCH / Avatar:
Recebe a imagem do avatar que será salva no banco
POST / Create
(Criação de usuários):
{
"name": "seu_nome",
"email": "seu_email",
"password": "sua_senha"
}
PUT / Update
(Atualiza dados do usuário):
{
"name": "novo_nome",
"email": "novo_email",
"password": "nova_senha",
"old_password": "senha_antiga"
}
GET / Index
(Retorna notas referentes a title e tags):
Queries: Title e Tags.
DELETE / Delete
(Deleta uma nota):
Recebe o ID da nota por meio do route params.
GET / Read
(Retorna a nota e as suas tags):
Recebe o ID da nota por meio do route params.
POST / Create
(Cria uma nova nota):
{
"title": "jegarne",
"description": "Massa",
"rating": 6,
"tags": ["Pamonha", "raimundo"]
}
GET / Index:
Retorna as tags que foram criadas nas notas pelo usuário.
GET / ?
(Recebe o nome da imagem cadastrada no banco e a retorna):
Recebe o nome da imagem por meio do route params.
Node.js
: Plataforma de execução JavaScript.Express
: Framework Node.js para criação de APIs RESTful.Banco de Dados (não especificado)
: Para armazenar informações de usuários e notas.JWT (JSON Web Tokens)
: Para autenticação e segurança.Multer
: Biblioteca para manipular uploads de arquivos, como imagens de perfil.Cors
: Utilizado para habilitar as requisições entre origens (CORS) no servidor.
"RocketNotes" é uma aplicação completa de gerenciamento de notas e links úteis que se baseia na tecnologia React no front-end e requer um back-end com funcionalidades de autenticação, gestão de usuários e notas, segurança e banco de dados. O projeto é uma solução eficaz para ajudar os usuários a organizar suas notas de maneira prática e eficiente.
Para acessar o site do "Rocket Notes", você pode clicar aqui.
|