https://github.com/victor-lis/in.orbit-back-end
Back-End do gerenciador de metas In.Orbit - Projeto que realizei seguindo o evento da RocketSeat do dia 09/09/24 até 15/09/24
https://github.com/victor-lis/in.orbit-back-end
drizzle fastify node sql typescript
Last synced: 6 months ago
JSON representation
Back-End do gerenciador de metas In.Orbit - Projeto que realizei seguindo o evento da RocketSeat do dia 09/09/24 até 15/09/24
- Host: GitHub
- URL: https://github.com/victor-lis/in.orbit-back-end
- Owner: Victor-Lis
- Created: 2024-09-16T02:19:41.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-02-18T13:10:52.000Z (8 months ago)
- Last Synced: 2025-03-24T12:12:44.284Z (7 months ago)
- Topics: drizzle, fastify, node, sql, typescript
- Language: TypeScript
- Homepage:
- Size: 68.4 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🎯 In.Orbit Back-End
API para gerenciamento de metas e objetivos pessoais, construída com Node.js, Fastify e Drizzle ORM.
## 🚀 Tecnologias
- [Fastify](https://fastify.dev/) - Framework web rápido e ade baixa sobrecarga
- [Drizzle ORM](https://orm.drizzle.team/) - ORM moderno para TypeScript
- [PostgreSQL](https://www.postgresql.org/) - Banco de dados relacional
- [TypeScript](https://www.typescriptlang.org/) - Adiciona tipagem estática ao JavaScript## ⚙️ Funcionalidades
- Criação e gerenciamento de metas
- Registro de conclusões de metas
- Acompanhamento semanal de progresso
- Relatórios de desempenho## 🛠️ Instalação
1. Clone o repositório
```bash
git clone https://github.com/seu-usuario/in-orbit-backend.git
```2. Instale as dependências
```bash
npm install
```3. Configure as variáveis de ambiente
```env
PORT=3333
DATABASE_URL=postgresql://seu-usuario:senha@host/database
```4. Execute as migrações
```bash
npx drizzle-kit generate
npx drizzle-kit migrate
```5. Inicie o servidor
```bash
npm run dev
```## 📦 Estrutura do Projeto
```
src/
├── db/ # Configurações do banco de dados
├── functions/ # Regras de negócio
├── http/ # Rotas e controllers
└── env.ts # Variáveis de ambiente
```## 🔌 Endpoints
### Metas
- `POST /goals` - Criar nova meta
- `DELETE /goals` - Remover meta
- `GET /pending-goals` - Listar metas pendentes
- `GET /summary` - Resumo semanal### Conclusões
- `POST /completions` - Registrar conclusão
- `DELETE /completion` - Remover conclusão## 🧪 Testes e Desenvolvimento
Para testar as rotas, recomendamos usar:
- [Insomnia](https://insomnia.rest/)
- [Postman](https://www.postman.com/)## 👥 Autores
- [@Victor-Lis](https://www.linkedin.com/in/victor-lis-bronzo/) - Desenvolvimento
- [@Diego Fernandes](https://www.linkedin.com/in/diego-schell-fernandes/) - Mentoria## 📄 Licença
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.