{"id":20440309,"url":"https://github.com/alyssonbarrera/ignite-rentalk","last_synced_at":"2026-04-09T06:46:16.999Z","repository":{"id":58834561,"uuid":"530378349","full_name":"alyssonbarrera/ignite-rentalk","owner":"alyssonbarrera","description":"Rentalk - Trilha Node.js | Ignite - Rocketseat","archived":false,"fork":false,"pushed_at":"2022-09-08T21:22:14.000Z","size":563,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-15T20:21:16.191Z","etag":null,"topics":["aws","docker","expressjs","jest","nginx","nodejs","postgresql","sentry","supertest","typeorm","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alyssonbarrera.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-08-29T20:12:53.000Z","updated_at":"2023-03-01T21:45:49.000Z","dependencies_parsed_at":"2023-01-18T01:30:46.078Z","dependency_job_id":null,"html_url":"https://github.com/alyssonbarrera/ignite-rentalk","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alyssonbarrera%2Fignite-rentalk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alyssonbarrera%2Fignite-rentalk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alyssonbarrera%2Fignite-rentalk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alyssonbarrera%2Fignite-rentalk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alyssonbarrera","download_url":"https://codeload.github.com/alyssonbarrera/ignite-rentalk/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241989857,"owners_count":20053802,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","docker","expressjs","jest","nginx","nodejs","postgresql","sentry","supertest","typeorm","typescript"],"created_at":"2024-11-15T09:23:35.493Z","updated_at":"2025-12-30T19:34:42.675Z","avatar_url":"https://github.com/alyssonbarrera.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cadastro de carro\n\n**Requisito(s) Funcionais**  \nDeve ser possível cadastrar um novo carro.\n\n**Regras de Negócio**  \nNão deve ser possível cadastrar um carro com uma placa já existente.  \nO carro deve ser cadastrado, por padrão, com disponibilidade.  \nO usuário responsável pelo cadastro deve ser um usuário administrator.\n\n# Listagem de carros\n\n**Requisito(s) Funcionais**  \nDeve ser possível listar todos os carros disponíveis.  \nDeve ser possível listar todos os carros disponíveis pelo nome da categoria.  \nDeve ser possível listar todos os carros disponíveis pelo nome da marca.  \nDeve ser possível listar todos os carros disponíveis pelo nome do carro.  \n\n**Regras de Negócio**  \nO usuário não precisa estar logado no sistema.\n\n# Cadastro de Especificação do carro\n\n**Requisito(s) Funcionais**  \nDeve ser possível cadastrar uma especificação para um carro.  \n\n**Regras de Negócio**  \nNão deve ser possível cadastrar uma especificação para um carro não cadastrado.  \nNão deve ser possível cadastrar uma especificação já existente para o carro.  \nO usuário responsável pelo cadastro deve ser um usuário administrator.\n\n# Cadastro de imagens do carro\n\n**Requisito(s) Funcionais**  \nDeve ser possível cadastrar a imagem do carro.  \n\n**Requisito(s) não funcionais**  \nUtilizar o multer para upload de arquivos.  \n\n**Regras de Negócio**  \nO usuário deve poder cadastrar mais de uma imagem para o mesmo carro.  \nO usuário responsável pelo cadastro deve ser um usuário administrator.\n\n# Aluguel de carro\n\n**Requisito(s) Funcionais**  \nDeve ser possível cadastrar um aluguel.  \n\n**Regras de Negócio**  \nO aluguel deve ter duração mínima de 24 horas.  \nNão deve ser possível cadastrar um novo aluguel caso já exista um aberto para o mesmo usuário.  \nNão deve ser possível cadastrar um novo aluguel caso já exista um aberto para o mesmo carro.  \nO usuário deve estar logado na aplicação.  \nAo realizar um aluguel, o status do carro deverá ser alterado para indisponível.\n\n# Devolução de carro\n\n**Requisito(s) Funcionais**  \nDeve ser possível cadastrar a imagem do carro.  \n\n**Regras de Negócio**  \nSe o carro for devolvido com menos de 24 horas, deverá ser cobrado diária completa.  \nAo realizar a devolução, o carro deverá ser liberado para outro aluguel.  \nAo realizar a devolução, o usuário deverá ser liberado para outro aluguel.  \nAo realizar a devolução, deverá ser calculado o total do aluguel.  \nCaso o horário de devolução seja superior ao horário previsto de entrega, deverá ser cobrada multa proporcional aos dias de atraso.  \nCaso haja multa, deverá ser somada ao total do aluguel.  \nO usuário deve estar logado na aplicação.\n\n# Listagem de Alugueis para usuário\n\n**Requisito(s) Funcionais**  \nDeve ser possível realizar a busca de todos os alugueis para o usuário.  \n\n**Regras de Negócio**  \nO usuário deve estar logado na aplicação.\n\n# Recuperar Senha\n\n**Requisito(s) Funcionais**  \nDeve ser possível o usuário recuperar a senha informando o e-mail.  \nO usuário deve receber um e-mail com o passo a passo para a recuperação da senha.  \nO usuário deve conseguir inserir uma nova senha.\n\n**Regras de Negócio**  \nO usuário precisa informar uma nova senha.  \nO link enviado para a recuperação deve expirar em 3 horas.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falyssonbarrera%2Fignite-rentalk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falyssonbarrera%2Fignite-rentalk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falyssonbarrera%2Fignite-rentalk/lists"}