An open API service indexing awesome lists of open source software.

https://github.com/deividsousan/galacticore

GalactiCore é uma API backend projetada para os entusiastas do universo sci-fi e desenvolvedores que buscam explorar a criação de galáxias inspiradas em Star Wars.
https://github.com/deividsousan/galacticore

api-rest docker-compose express-js jest mysql typeorm typescript

Last synced: 3 months ago
JSON representation

GalactiCore é uma API backend projetada para os entusiastas do universo sci-fi e desenvolvedores que buscam explorar a criação de galáxias inspiradas em Star Wars.

Awesome Lists containing this project

README

          

Linguagem mais utilizada Último commit

GalactiCore é uma API backend projetada para os entusiastas do universo sci-fi e desenvolvedores que buscam explorar a criação de galáxias inspiradas em Star Wars. Este projeto permite a criação, gerenciamento e visualização de planetas, sistemas estelares, personagens icônicos e naves espaciais, sendo um projeto que objetiva ser divertido e demonstrar minhas habilidades no desenvolvimento de APIs.

Objetivo



O GalactiCore foi desenvolvido como um projeto para colocar em prática minhas habilidades de desenvolvimento backend, abordando a maior parte das etapas e tecnologias envolvidas no desenvolvimento de uma API.

Rotas da API

- **Planets**

- **POST 📤 /planets:** Criar um novo planeta.
- **GET 📥 /planets:** Listar todos os planetas.
- **GET 📥 /planets/:id:** Obter detalhes de um planeta específico.
- **PUT 🔄 /planets/:id:** Atualizar informações de um planeta.
- **DELETE 🗑 /planets/:id:** Deletar um planeta.

- **Stellar Systems**

- **POST 📤 /star-systems:** Criar um novo sistema estelar.
- **GET 📥 /star-systems:** Listar todos os sistemas estelares.
- **GET 📥 /star-systems/:id:** Obter detalhes de um sistema estelar específico.
- **PUT 🔄 /star-systems/:id:** Atualizar informações de um sistema estelar
- **DELETE 🗑 /star-systems/:id**: Deletar um sistema estelar.

- **Characters**

- **POST 📤 /characters:** Criar um novo personagem.
- **GET 📥 /characters:** Listar todos os personagens.
- **GET 📥 /characters/:id:** Obter detalhes de um personagem específico.
- **PUT 🔄 /characters/:id:** Atualizar informações de um personagem.
- **DELETE 🗑 /characters/:id:** Deletar um personagem.

- **Spaceships**
- **POST 📤 /spaceships:** Criar uma nova nave espacial.
- **GET 📥 /spaceships:** Listar todas as naves espaciais.
- **GET 📥 /spaceships/:id:** Obter detalhes de uma nave espacial específica.
- **PUT 🔄 /spaceships/:id:** Atualizar informações de uma nave espacial.
- **DELETE 🗑 /spaceships/:id:** Deletar uma nave espacial.


Ferramentas e Tecnologias

> **TypeScript**: Linguagem utilizada para realização do projeto.
>
> **ExpressJS**: Framework minimalista e prático para criar APIs RESTful.
>
> **TypeORM**: Para manipular o banco de dados através do código.
>
> **Jest**: Para testes de integração e garantir que alterações não quebrem os endpoints.
>
> **Docker Compose**: Para subir o serviço do banco de dados _MySQL_.

Linguagem mais utilizada
Linguagem mais utilizada
Linguagem mais utilizada
Linguagem mais utilizada
Linguagem mais utilizada

Linguagem mais utilizada
Linguagem mais utilizada
Linguagem mais utilizada
Linguagem mais utilizada


Arquitetura do Projeto

```plaintext
src/
├── infra/
│ ├── entities/
│ │ └── ...
│ ├── migrations/
│ │ └── ...
│ ├── database.ts
│ └── error.ts
└── routes/
└── ...
test/
└── integration/
├── Spaceships.test.ts
└── StellarSystems.test.ts
...
```


Como rodar


...