Servicio de autenticación y multitenancy para Skailan.
npm install skailan-corebash
npm install @skailan/core
`
Uso
$3
`typescript
import { app } from '@skailan/core';
// El servidor se inicia automáticamente
app.listen(3006, () => {
console.log('Core service running on port 3006');
});
`
$3
`env
DATABASE_URL="postgresql://user:password@localhost:5432/skailan"
JWT_SECRET="your-jwt-secret"
RESEND_API_KEY="your-resend-api-key"
`
API Endpoints
$3
- POST /auth/login - Iniciar sesión
- POST /auth/register - Registrar usuario
- POST /auth/forgot-password - Solicitar restablecimiento de contraseña
- POST /auth/reset-password - Restablecer contraseña
$3
- GET /organizations - Listar organizaciones
- POST /organizations - Crear organización
- GET /organizations/:id - Obtener organización
- PUT /organizations/:id - Actualizar organización
$3
- GET /memberships - Listar membresías
- POST /memberships - Crear membresía
- GET /memberships/:id - Obtener membresía
Características
- Multitenancy: Cada organización tiene su propio esquema de base de datos
- Autenticación JWT: Tokens seguros para autenticación
- Gestión de permisos: Sistema de roles y permisos granular
- Migraciones automáticas: Migraciones de esquemas por tenant
- Validación de datos: Validación robusta de entrada
Dependencias
- Express.js para el servidor web
- Prisma para ORM y migraciones
- JWT para autenticación
- bcryptjs para hash de contraseñas
- Resend para envío de emails
Desarrollo
`bash
Instalar dependencias
npm install
Ejecutar en modo desarrollo
npm run dev
Construir para producción
npm run build
Generar cliente Prisma
npm run prisma:generate
Ejecutar migraciones
npm run prisma:migrate
``