Este repositório é um servidor mock protegido, construído com json-server e JWT (JSON Web Tokens). Ele permite que desenvolvedores front-end trabalhem com dados simulados antes que o backend seja completamente implementado. Inclui ferramentas para geração de dados mock, hashing de senhas e suporte para inicializar o servidor com ou sem autenticação.
- Autenticação JWT: Implementação de endpoints protegidos com tokens JWT.
- Geração de dados mock: Uso do
@faker-js/fakerpara popular o banco de dados JSON com dados realistas. - Mock de APIs RESTful: Criação automática de endpoints baseados no arquivo
db.json. - Customização de respostas: Middleware para paginação e filtros de busca.
rgranvilla-mock-server/
├── api_v1/
│ ├── server.js # Servidor principal com autenticação
│ ├── generateData.js # Script para geração de dados mock
│ ├── users.json # Arquivo com dados de usuários
│ ├── db.json # Banco de dados fake
│ └── tools.js # Ferramentas auxiliares
├── package.json # Dependências e scripts
└── readme.md # Documentação do projeto
- Node.js instalado.
- Clone o repositório:
git clone https://github.com/rgranvilla/rgranvilla-mock-server.git cd rgranvilla-mock-server - Instale as dependências:
npm install
- Gere dados mock:
npm run mock-data
- Execute o servidor:
- Sem autenticação:
npm start
- Com autenticação:
npm run start-auth
- Sem autenticação:
- Para gerar senhas com hash:
npm run hash
O servidor estará disponível em: http://localhost:3000
| Descrição | Script |
|---|---|
| Iniciar servidor sem auth | npm start |
| Iniciar servidor com auth | npm run start-auth |
| Descrição | Script |
|---|---|
| Gerar dados mock | npm run mock-data |
| Gerar senhas com hash | npm run hash |
| Endpoint | Descrição |
|---|---|
localhost:3000/auth/login |
Login de usuário |
localhost:3000/purchases |
Lista de compras (token necessário) |
localhost:3000/campaigns |
Lista de campanhas (token necessário) |
bcrypt: Para hashing de senhas.body-parser: Para parsing de corpos de requisição.cors: Para habilitar CORS (Cross-Origin Resource Sharing).json-server: Para criar o servidor mock.jsonwebtoken: Para criar e verificar tokens JWT.@faker-js/faker: Para geração de dados mock.moment: Para manipulação de datas.ramda: Para utilitários de programação funcional.
Sugestões e feedback são bem-vindos via Pull Requests ou Issues no repositório.
Este projeto está licenciado sob a MIT License.
