2.0.0 • Published 6 months ago
rjs-api
Licence
MIT
Version
2.0.0
Deps
1
Size
20 kB
Vulns
0
Weekly
0
rjs-api
Uma coleção de utilitários para Node.js/TypeScript com foco em produtividade, segurança e suporte a documentos brasileiros.
Inclui ferramentas para:
- Documentos (CPF/CNPJ)
- Datas com timezone
- Segurança (tokens, UUID, criptografia)
- Hash de senha
- Middlewares Express e Fastify
Instalação
npm install rjs-api
Ou:
yarn add rjs-api
Recursos Inclusos
1. Documentos (CPF e CNPJ)
Arquivo: src/utils/documents.ts
Funções disponíveis:
formatCPF(cpf)validateCPF(cpf)unformatCPF(cpf)formatCNPJ(cnpj)validateCNPJ(cnpj)unformatCNPJ(cnpj)
Exemplo:
import { documents } from "rjs-api";
documents.formatCPF("12345678901");
documents.validateCNPJ("12.345.678/0001-99");
2. Datas e Timezone
Baseado em moment-timezone
Funções:
formatDate(date, format, timezone?)current(timezone?)
Exemplo:
import { time } from "rjs-api";
const agora = time.current();
const dataBR = time.formatDate(new Date(), "DD/MM/YYYY");
3. Segurança
Pasta: src/utils/security/
Criptografia (AES-256)
import { security } from "rjs-api";
const cipher = security.encryption.encrypt("texto", "chave-secreta");
const text = security.encryption.decrypt(cipher, "chave-secreta");
Hash de Senha (bcrypt)
const hash = await security.password.hashPassword("senha123");
const ok = await security.password.comparePassword("senha123", hash);
Tokens & UUID
security.tokens.generateToken(32);
security.tokens.generateUUID();
4. Middlewares (Express + Fastify)
Arquivos:
src/utils/security/middleware/express.tssrc/utils/security/middleware/fastify.ts
Exemplo com Express:
import express from "express";
import { security } from "rjs-api";
const app = express();
app.use(security.middleware.express.apiKey("MINHA-KEY"));
Exemplo com Fastify:
import Fastify from "fastify";
import { security } from "rjs-api";
const app = Fastify();
app.register(security.middleware.fastify.apiKey, { key: "MINHA-KEY" });
Estrutura do Projeto
src/
├─ index.ts
├─ utils/
│ ├─ documents.ts
│ ├─ time.ts
│ └─ security/
│ ├─ encryption.ts
│ ├─ index.ts
│ ├─ password.ts
│ ├─ tokens.ts
│ └─ middleware/
│ ├─ express.ts
│ ├─ fastify.ts
│ └─ index.ts
Importação Completa
import * as rjs from "rjs-api";
rjs.documents.validateCPF("123...");
rjs.time.current();
rjs.security.tokens.generateUUID();
rjs.security.password.hashPassword("abc");
Tipos TypeScript
Total suporte a IntelliSense e tipagem automática.
Todos os módulos possuem .d.ts.
Licença
MIT — livre para uso pessoal e comercial.