Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/joaomacaoli/task-manager-server
API desenvolvida para o cadastro e login de usuários utilizanod NestJS
https://github.com/joaomacaoli/task-manager-server
nestjs nestjs-backend nestjs-postgres
Last synced: 18 days ago
JSON representation
API desenvolvida para o cadastro e login de usuários utilizanod NestJS
- Host: GitHub
- URL: https://github.com/joaomacaoli/task-manager-server
- Owner: joaomacaoli
- Created: 2024-09-03T19:03:30.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-09-27T02:32:24.000Z (about 2 months ago)
- Last Synced: 2024-10-16T23:05:33.105Z (about 1 month ago)
- Topics: nestjs, nestjs-backend, nestjs-postgres
- Language: TypeScript
- Homepage:
- Size: 201 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Criando o conteúdo do README para o backend em formato .md
readme_backend_content = """
# Task Manager - BackendEste é o repositório do backend do projeto **Task Manager**, desenvolvido utilizando **NestJS**. O backend é responsável por gerenciar as operações relacionadas às tarefas e a comunicação com o banco de dados **PostgreSQL** utilizando **TypeORM**.
## Tecnologias Utilizadas
- **NestJS**: Framework Node.js para construção de servidores escaláveis.
- **TypeORM**: ORM para interação com o banco de dados.
- **PostgreSQL**: Banco de dados relacional utilizado.
- **JWT**: Implementação de autenticação com JSON Web Tokens.
- **Docker**: Utilizado para containerização do banco de dados localmente.
- **Render**: Plataforma de deploy para o backend.
- **Neon.tech**: Plataforma de hospedagem do banco de dados PostgreSQL.## Funcionalidades
- Autenticação de usuários via JWT.
- CRUD de tarefas (criar, ler, atualizar, deletar).
- Validação de dados utilizando **class-validator** e **class-transformer**.
- Integração com o frontend via API RESTful.## Pré-requisitos
Para rodar o projeto localmente, é necessário ter instalado:
- [Node.js](https://nodejs.org/) (versão 14 ou superior)
- [npm](https://www.npmjs.com/) ou [yarn](https://yarnpkg.com/)
- [Docker](https://www.docker.com/) (para o banco de dados local)## Variáveis de Ambiente
Crie um arquivo `.env` na raiz do projeto com base no arquivo `.env.example` fornecido. Preencha as variáveis de ambiente necessárias para conexão com o banco de dados e outras configurações do sistema.
Exemplo de variáveis de ambiente:
```bash
DATABASE_HOST=localhost
DATABASE_PORT=5432
DATABASE_USER=your_user
DATABASE_PASSWORD=your_password
DATABASE_NAME=your_db
JWT_SECRET=your_jwt_secret
```## Como rodar o projeto
1. Clone o repositório:
```bash
git clone https://github.com/joaomacaoli/task-manager-server.git
```2. Instale as dependências:
```bash
npm install
# ou
yarn install
```3. Rode o Docker para configurar o banco de dados PostgreSQL localmente (caso esteja utilizando):
```bash
docker-compose up -d
```4. Rode as migrações do banco de dados:
```bash
npm run typeorm migration:run
# ou
yarn typeorm migration:run
```5. Execute a aplicação:
```bash
npm run start:dev
# ou
yarn start:dev
```6. O servidor estará disponível em:
```
http://localhost:3000
```## Deploy
O backend foi deployado utilizando a plataforma Render. Para fazer o deploy da sua própria versão:
1. Crie uma conta no [Render](https://render.com/).
2. Conecte o seu repositório na plataforma.
3. Adicione as variáveis de ambiente no painel da Render.
4. Configure o deploy automático a partir do branch principal.## Licença
Este projeto está sob a licença MIT. Veja o arquivo [LICENSE](./LICENSE) para mais detalhes.