Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aleferreinert/findbook-back-end
Back-end do projeto findbook, desenvolvido em express.
https://github.com/aleferreinert/findbook-back-end
express ia mongodb mongoose openai zod
Last synced: 11 days ago
JSON representation
Back-end do projeto findbook, desenvolvido em express.
- Host: GitHub
- URL: https://github.com/aleferreinert/findbook-back-end
- Owner: AleferReinert
- Created: 2024-06-05T21:55:22.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-06-15T23:05:53.000Z (5 months ago)
- Last Synced: 2024-06-16T00:21:47.911Z (5 months ago)
- Topics: express, ia, mongodb, mongoose, openai, zod
- Language: TypeScript
- Homepage:
- Size: 189 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Findbook - back-end
Back-end do projeto [findbook](https://github.com/AleferReinert/findbook), desenvolvido em express.
## Como rodar
### 1. Configure as variáveis de ambiente
```
# .env
DATABASE_URL = ""
OPENAI_API_SECRET_KEY = ""
```#### DATABASE_URL
- Acesse [Mongo Atlas](https://cloud.mongodb.com)
- Navegue até `Overview > Clusters > Cluster0`
- Clique em `Connect`, depois em `Compass`
- Copie a string da conexão
- Cole no valor de DATABASE_URL
- Substitua \ pela senha do usuário (findbook) do Mongo Atlas#### OPENAI_API_SECRET_KEY
- Obter em em [OpenAI Platform](https://platform.openai.com/organization/api-keys)
- Não é possível copiar uma secret_key já existente.### 2. Inicie o ambiente de desenvolvimento
```
npm run dev
```Se tudo ocorrer bem, haverá a seguinte mensagem no terminal:
```
Server running on port 3333...
Database connected!
```## Endpoints
| Método HTTP | Rota | Descrição |
| ----------- | --------- | ------------------- |
| POST | /books | Cria um novo livro |
| GET | /books | Pesquisa por livros |
| PUT | /book/:id | Atualiza um livro |
| DELETE | /book/:id | Deleta um livro |Os testes podem ser feitos através do arquivo [api.http](https://github.com/AleferReinert/findbook-back-end/blob/main/api.http).
## Imagens
Hospedadas em [Amazon S3](https://us-east-2.console.aws.amazon.com/s3/buckets/findbook).
## Tecnologias Utilizadas
- **express**: Framework para criar aplicações web.
- **cors**: Middleware para habilitar CORS (Cross-Origin Resource Sharing).
- **dotenv**: Carrega variáveis de ambiente a partir de um arquivo `.env`.
- **mongoose**: Biblioteca para modelagem de dados MongoDB.
- **zod**: Biblioteca para validação e parsing de esquemas.
- **openai**: Plataforma de inteligência artificial para desenvolvimento de modelos de linguagem.## Créditos
Esse projeto foi desenvolvido durante a 4ª Semana do Herói, da Alexia Kattah.