https://github.com/nunees/rentx-backend
RentX - Rent a Car
https://github.com/nunees/rentx-backend
docker-compose jest nodejs postgresql typescript
Last synced: 3 months ago
JSON representation
RentX - Rent a Car
- Host: GitHub
- URL: https://github.com/nunees/rentx-backend
- Owner: nunees
- Created: 2022-06-27T22:14:28.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2023-04-26T01:08:39.000Z (about 3 years ago)
- Last Synced: 2025-01-25T05:41:54.837Z (over 1 year ago)
- Topics: docker-compose, jest, nodejs, postgresql, typescript
- Language: TypeScript
- Homepage:
- Size: 625 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Rent X - Rent a car application (Aluguel de carros)





[](https://wakatime.com/badge/user/91a1b1d1-ad80-4563-91e2-93999f5e4311/project/1fe87bc9-b71a-4469-8866-90fd5559e572)

## **Sobre**
Essa API foi construída com **NodeJS** + **Typescript** como uma empresa fictícia de **aluguel de carros** chamada **RentX** durante o curso **Ignite de NodeJS** da [**Rocketseat**](https://github.com/Rocketseat).
A aplicação possui as seguintes funcionalidades:
- Cadastro de usuários
- Autenticação de usuários e geração de token
- Cadastro de carros e itens relacionados ao carro como especificações e categorias
- Realização de um aluguel e devolução do carro
- Recuperação de senha do usuário através de e-mail
Foram utilizados as seguintes ferramentas e padrões:
- S.O.L.I.D Principles
- Testes de integração e unitarios
- TypeORM e TSyringe
- TDD e DDD
- Docker containers
- Postgres Database
- Upload de arquivos
## 💻 Instalação, Dependências e Executando o Projeto
**1.** Clone este repositório
```
git clone git@github.com:nunees/rentx-backend.git
```
**2.** Vá até o diretório raiz do projeto
```
cd rentx-backend
```
**3.** Instale as dependências necessárias
```
yarn
ou
npm install
```
**4.** Execute a aplicação
```
yarn dev
```
## :floppy_disk: Usando a Aplicação
Para realização de **requisições** na aplicação, deve ser utilizado o **Insomnia** ou **Postman**, importando o [arquivo](insomnia_requests) de requisições já existente neste diretório.
Atentar-se aos parâmetros necessários no **Header**.
## :syringe: Evidência de Testes
Nesta aplicação, são contemplados **Testes Unitários e Testes de Integração** utilizando o framework de testes **Jest**, visando garantir o correto funcionamento das funcionalidades e manter a aplicação de acordo com os requisitos.