https://github.com/jrmmendes/nodejs-users-api
API para signup, signin e busca de usuários
https://github.com/jrmmendes/nodejs-users-api
inversify nodejs typescript
Last synced: 3 months ago
JSON representation
API para signup, signin e busca de usuários
- Host: GitHub
- URL: https://github.com/jrmmendes/nodejs-users-api
- Owner: jrmmendes
- License: mit
- Created: 2020-09-17T20:01:29.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2020-09-22T18:45:40.000Z (almost 6 years ago)
- Last Synced: 2025-09-15T00:57:13.454Z (10 months ago)
- Topics: inversify, nodejs, typescript
- Language: TypeScript
- Homepage: https://nodejs-users-api.herokuapp.com
- Size: 1.21 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
NodeJS Users API
================
[](https://codeclimate.com/github/jrmmendes/nodejs-users-api/maintainability) [](https://codeclimate.com/github/jrmmendes/nodejs-users-api/test_coverage) [](https://nodejs-users-api.herokuapp.com/) [](https://travis-ci.org/jrmmendes/nodejs-users-api)
Essa é uma API NodeJS que utiliza TypeScript, Inversify e MongoDB para criação de usuários e geração de tokens para acesso a rotas protegidas.
---
# Setup
Após clonar esse repositório, instale todas as dependências utilizando algum gerenciador de pacotes para node. Recomenda-se o uso do `yarn`:
```
yarn install
```
Inicie a aplicação com os scripts`start:dev` ou `start`. Os testes podem ser executados com o script `test` e caso necessite gerar a cobertura de testes, utilize `test:cov`.
## Variáveis de Ambiente
No arquivo `.env`, dentro da raiz do projeto, é necessário inserir algumas constantes para o funcionamento da aplicação.
- `APP_SECRET`: string qualquer, utilizada para criptografia/geração de hashs.
- `DATABASE_URL`: uma string de conexão do `mongodb`. Caso esteja rodando o db pelo docker, o valor `mongodb://root:toor@localhost:27017/node-api-db?authSource=admin` pode ser utilizado.
- `PORT`(opcional): define a porta que será reservada para a aplicação (o valor padrão é 3000).
> Em produção, essas constantes devem ser inseridas diretamente no host.
## Banco de Dados
Caso deseje subir uma instância do mongodb rapidamente, é possível utilizar o Docker Compose, juntamente com o arquivo de configuração disponibilizado neste projeto - `db.compose.yml`. Para isso, execute:
```
docker-compose -f db.compose.yml up mongo -d
```
Na pasta raiz do projeto.
> Uma alternativa é utilizar o MongoDB Atlas.
---
# Licença
> Você pode ler a licença completa [aqui](https://github.com/jrmmendes/nodejs-users-api/LICENSE.md)
Esse projeto é licenciado nos termos da licença **MIT**