daividsimoes / ServeRest

APIs REST simulando loja virtual para servir de estudo de testes de API de forma manual ou automatizada

Home Page:https://serverest.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ServeRest

Servidor REST para estudo de testes de API

serverest version Docker Pulls Mutation test score serverest total downloads

Código de conduta | Como contribuir | Histórico de alterações | Patrocinadores

Logo do ServeRest

ServeRest permite o estudo de:

  • Verbos GET, POST, PUT e DELETE com persistência de dados
  • Autenticação no header
  • Query string
  • Teste de schema json

Ambientes disponíveis

Online em serverest.dev
Texto serverest.dev
Local com NPM

Logo do NPM
Local com docker
Logo do Docker

Print do ServeRest iniciado no terminal

Consumindo o ServeRest

O ServeRest está disponível de forma online, no npm e no docker.

Todas essas opções possuem as mesmas rotas, regras, dados pré-cadastrados e documentação. Escolha a melhor opção para você.

No ambiente online os dados cadastrados são removidos diariamente, enquanto que no local basta reiniciar o ServeRest.

Prefira a opção de ambiente local caso precise que os dados não sejam alterados por outro usuário.

Online 7-day uptime 100.00%

Acesse https://serverest.dev para visualizar a documentação e as rotas disponíveis.

Essa é a melhor opção para quem não possui NPM e Docker na máquina ou não quer preocupar em gerenciar ambiente.

A base de dados volta ao estado original diariamente às 3h.

O ServeRest online possui monitoramento constante do status e tempo de atividade para garantir que esteja sempre disponível. Acesse ServeRest Status para ver detalhes do uptime.

Localmente com NPM

Execute o seguinte comando no terminal:

npx serverest@latest
Abra para ver detalhes de configuração do ServeRest com NPM

Configuração

Para visualizar as configurações que são possíveis de serem feitas execute o comando:

npx serverest -h

Informação de opções e exemplos fornecidos no terminal

Segurança (--nosec)

Por default, o ServeRest irá fazer as seguintes alterações no cabeçalho, que podem ser desabilitadas com npx serverest --nosec:

Cabeçalhos adicionados:

  • Strict-Transport-Security: max-age=15552000; includeSubDomains
  • X-Content-Type-Options: nosniff
  • X-DNS-Prefetch-Control: off
  • X-Download-Options: noopen
  • X-Frame-Options: SAMEORIGIN
  • X-XSS-Protection: 1; mode=block

Cabeçalho removido:

  • X-Powered-By: Express

Utilize esse comportamento nos seus testes, validando a presença/ausência desses cabeçalhos.

Para saber mais leia o checklist de segurança de API


Localmente com docker

Execute o seguinte comando no terminal:

docker run -p 3000:3000 paulogoncalvesbh/serverest:latest

Para visualizar as configurações que são possíveis de serem feitas execute o comando:

docker run -p 3000:3000 paulogoncalvesbh/serverest:latest --help

Executando versão específica

Em ambos os comandos de subida de ambiente local será utilizado a última versão disponível. Caso queira usar uma versão específica basta substituir o latest pela versão desejada.

Você pode encontrar as versões disponíveis na lista de tags no Docker Hub e na lista de versões do NPM.

Exemplos de automação

Os repositórios abaixo são exemplos de automação com boas práticas e que consome o ServeRest.

Badge Badge ServeRest

[![Badge ServeRest](https://img.shields.io/badge/API-ServeRest-green)](https://github.com/ServeRest/ServeRest/)

Patrocinadores

Empresas ($15+/mês)

Sua empresa usa o ServeRest? Pergunte ao seu gerente ou equipe de marketing se sua empresa estaria interessada em apoiar este projeto e ter os seguintes serviços:

  1. Subdomínio próprio (nome-escolhido.serverest.dev)
  2. Acesso a todas as requests e respostas feitas nos últimos 7 dias no subdomínio

Apoiador individual - Open Collective

Individuais

Achou o projeto útil? Faça doação única ou mensal a partir de 1 dólar e ajude a pagar o domínio, a hospedagem e a manutenção de https://serverest.dev.

Apoiador individual - Open Collective

Todos os patrocinadores anteriores e atuais podem ser vistos no Open Collective do ServeRest.

Contribuidores ✨

Veja aqui como você pode contribuir. Contribuições de qualquer tipo são bem-vindas!


Leandro Muto

📖 🚇

Felipe Rodrigues

🚇

Lucas Amaral

📢 🐛 📖

lucas.fraga

🤔 🐛

bruno batista

🤔

Elias Reis

🚧 🚇

gabriel-pinheiro

💻 🤔

Rafael Gomes

🚇

Diego Bandeira

🚇

Maximiliano Alves

📢

Murilo Maia

💻

Empresas que utilizam o ServeRest

Logo da empresa Globo.com Logo da TOTVS Logo da Noesis Logo da Accenture
Logo da empresa Trybe Logo da Ailos Logo da Ânima Educação

About

APIs REST simulando loja virtual para servir de estudo de testes de API de forma manual ou automatizada

https://serverest.dev

License:GNU General Public License v3.0


Languages

Language:JavaScript 96.5%Language:Go 2.4%Language:Makefile 0.7%Language:Dockerfile 0.2%Language:Shell 0.2%