npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

krakenweb-nestjs

v0.1.2

Published

Migración de Kraken Web a NestJS con Prisma

Readme

Kraken Web NestJS

Migración del sistema Kraken Web a una arquitectura moderna basada en NestJS, Prisma ORM y TypeScript.

Descripción

Este proyecto es una migración del sistema Kraken Web original (Java) a una arquitectura moderna basada en NestJS. La migración sigue un enfoque modular y aplica las mejores prácticas de desarrollo, incluyendo documentación detallada con Swagger, pruebas unitarias y de integración, y una estructura de código clara y mantenible.

Tecnologías Principales

  • NestJS: Framework de Node.js para construir aplicaciones del lado del servidor eficientes y escalables
  • Prisma ORM: ORM de próxima generación para Node.js y TypeScript
  • TypeScript: Superset tipado de JavaScript
  • JWT: Autenticación basada en tokens
  • Swagger/OpenAPI: Documentación automática de API
  • Jest: Framework de pruebas

Estructura del Proyecto

krakenweb-nestjs/
├── docs/                  # Documentación técnica
├── prisma/                # Esquema y migraciones de Prisma
│   ├── migrations/        # Migraciones de la base de datos
│   ├── seeds/             # Scripts de seed para datos iniciales
│   └── schema.prisma      # Esquema de la base de datos
├── src/                   # Código fuente
│   ├── auth/              # Módulo de autenticación
│   ├── common/            # Código compartido entre módulos
│   ├── app.module.ts      # Módulo principal de la aplicación
│   └── main.ts            # Punto de entrada de la aplicación
├── test/                  # Pruebas unitarias y de integración
├── .env                   # Variables de entorno (no incluido en el repositorio)
├── .env.example           # Ejemplo de variables de entorno
├── nest-cli.json          # Configuración de NestJS CLI
├── package.json           # Dependencias y scripts
└── tsconfig.json          # Configuración de TypeScript

Módulos Implementados

Módulo de Autenticación

Implementa un sistema completo de autenticación basado en JWT con roles y permisos.

Ver documentación detallada del módulo de autenticación

Módulo de Gestión de Items

Implementa funcionalidades para la gestión de inventario, incluyendo búsqueda de items, consulta de stock y gestión de movimientos.

Ver documentación detallada del módulo de items

Requisitos

  • Node.js (v16 o superior)
  • npm o yarn
  • Para producción con Oracle: Oracle Database y Oracle Instant Client
  • Base de datos compatible con Prisma (SQLite para desarrollo, PostgreSQL recomendado para producción)

Instalación

  1. Clonar el repositorio:
git clone <url-del-repositorio>
cd krakenweb-nestjs
  1. Instalar dependencias:
npm install
  1. Configurar variables de entorno:
cp .env.example .env
# Editar .env con los valores adecuados
  1. Generar el cliente de Prisma:
npm run prisma:generate
  1. Ejecutar migraciones:
npm run prisma:migrate
  1. Inicializar datos (opcional):
npm run prisma:seed

Ejecución

Desarrollo

npm run start:dev

La aplicación estará disponible en http://localhost:3000.

Producción

Configuración Estándar

npm run build
npm run start:prod

Configuración con Oracle (como en el proyecto Java original)

Para ejecutar la aplicación en producción utilizando Oracle como base de datos:

  1. Configura las variables de entorno para producción:
cp .env.example .env.production
# Edita .env.production con la configuración de Oracle
  1. Construye la aplicación:
npm run build
  1. Inicia la aplicación en modo producción:
NODE_ENV=production node dist/main.js

Para una configuración detallada con Oracle, consulta la guía de configuración de producción con Oracle.

Documentación API

La documentación de la API está disponible en http://localhost:3000/api/docs cuando la aplicación está en ejecución.

Pruebas

Pruebas Unitarias

npm test

Pruebas de Cobertura

npm run test:cov

Pruebas End-to-End

npm run test:e2e

Reglas de Desarrollo

Este proyecto sigue las Reglas de Desarrollo para Kraken API, que incluyen:

  • Estándares de código (ESLint, Prettier)
  • Convenciones de commits (Conventional Commits)
  • Versionado semántico
  • Flujo de trabajo de desarrollo

Licencia

Este proyecto es propiedad de Farmatodo y su uso está restringido según los términos de la licencia interna.