https://github.com/chrisdev-ts/dabetai-api

https://github.com/chrisdev-ts/dabetai-api

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (4.7%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: chrisdev-ts
  • License: mit
  • Language: TypeScript
  • Default Branch: main
  • Size: 365 KB
Statistics
  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created 11 months ago · Last pushed 11 months ago
Metadata Files
Readme Contributing License

README.md

dabetai API - Backend Principal

API REST para la plataforma de monitoreo de diabetes que conecta pacientes, médicos y modelos de inteligencia artificial.

NestJS version TypeScript version Prisma version PostgreSQL version JWT Authentication

� Documentación de la API

La API incluye documentación automática con Swagger UI y Scalar:

  • Swagger UI: http://localhost:3000/api/docs
  • Scalar UI: http://localhost:3000/api/scalar

Swagger UI Scalar UI

🏥 ¿Qué es dabetai API?

dabetai API es el backend central de la plataforma integral para el monitoreo de diabetes que incluye:

  • API REST (esta): backend principal para todos los servicios
  • App móvil: para pacientes, monitoreo y predicciones
  • App web: para médicos, seguimiento de pacientes
  • API de IA: predicción de complicaciones diabéticas

La API maneja la autenticación, gestión de usuarios (pacientes y médicos), almacenamiento de datos médicos y comunicación con los modelos de IA para retinopatía, nefropatía, neuropatía y pie diabético.


✨ Funcionalidades

🔐 Autenticación JWT - registro y login de usuarios con roles (paciente, médico, admin)
Gestión de usuarios - CRUD completo para pacientes y médicos
Datos médicos - almacenamiento de información de diabetes y comorbilidades
Registro en 2 pasos - cuenta básica + completar perfil médico
Documentación automática - Swagger UI y Scalar para testing de APIs
🛡️ Seguridad robusta - hash de contraseñas, validación de datos y tokens seguros
�️ Base de datos relacional - PostgreSQL con Prisma ORM
📈 Estadísticas - endpoints para métricas de pacientes y médicos


🛠 Tecnologías

  • NestJS - Framework backend escalable y modular
  • TypeScript - Tipado estático para mayor robustez
  • Prisma ORM - Gestión de base de datos type-safe
  • PostgreSQL - Base de datos relacional
  • JWT - Autenticación con tokens seguros
  • Swagger/OpenAPI - Documentación automática de APIs
  • bcrypt - Hash seguro de contraseñas
  • class-validator - Validación de datos de entrada

⚡ Instalación rápida

Prerrequisitos

  • Node.js (v18 o superior)
  • PostgreSQL (v14 o superior)
  • npm o yarn

Pasos

  1. Clonar repositorio

bash git clone https://github.com/chrisdev-ts/dabetai-api.git cd dabetai-api

  1. Instalar dependencias

bash npm install

  1. Configurar base de datos Crea .env en la raíz:

env DATABASE_URL="postgresql://usuario:contraseña@localhost:5432/dabetai_db" JWT_SECRET="tu_jwt_secret_super_seguro" NODE_ENV="development"

  1. Ejecutar migraciones de Prisma

bash npx prisma migrate dev npx prisma generate

  1. Iniciar servidor

bash npm run start:dev

La API estará disponible en http://localhost:3000

📚 Acceder a la documentación

  • Swagger UI: http://localhost:3000/api/docs
  • Scalar UI: http://localhost:3000/api/scalar

🏗 Ecosistema dabetai: nuestros repositorios

dabetai está compuesto por múltiples repositorios especializados:

| Repositorio | Propósito | Estado | | ----------------------------------------------------------------------- | --------------------------- | ---------------- | | dabetai-mobileapp | App para pacientes | ✅ En desarrollo | | dabetai-webapp | App web para médicos | ✅ En desarrollo | | dabetai-aiapi | API de IA y predicciones | ✅ En desarrollo | | dabetai-aimodels | Modelos de machine learning | ✅ En desarrollo | | dabetai-landing | Página de aterrizaje | ✅ En desarrollo | | dabetai-api | API principal del backend | ✅ En desarrollo |


🤝 Colaboración interna

Seguimos convenciones específicas para mantener consistencia - consulta CONTRIBUTING.MD.

🤝 Reconocimientos

Este proyecto fue desarrollado por el equipo de autores:

  • Cardenas Cabal Fermín
  • Ortiz Pérez Alejandro
  • Serrano Puertos Jorge Christian

Con la asesoría y guía conceptual de:

  • Guarneros Nolasco Luis Rolando
  • Cruz Ramos Nancy Aracely

Y con el apoyo académico de la
- Universidad Tecnológica del Centro de Veracruz

Owner

  • Name: Christian Serrano
  • Login: chrisdev-ts
  • Kind: user
  • Location: Mexico

Trying do better

GitHub Events

Total
  • Watch event: 1
  • Push event: 5
  • Create event: 1
Last Year
  • Watch event: 1
  • Push event: 5
  • Create event: 1

Dependencies

package-lock.json npm
  • 1034 dependencies
package.json npm
  • @eslint/eslintrc ^3.2.0 development
  • @eslint/js ^9.18.0 development
  • @nestjs/cli ^11.0.0 development
  • @nestjs/schematics ^11.0.0 development
  • @nestjs/testing ^11.0.1 development
  • @types/bcrypt ^6.0.0 development
  • @types/express ^5.0.0 development
  • @types/jest ^30.0.0 development
  • @types/node ^22.10.7 development
  • @types/passport-jwt ^4.0.1 development
  • @types/supertest ^6.0.2 development
  • eslint ^9.18.0 development
  • eslint-config-prettier ^10.0.1 development
  • eslint-plugin-prettier ^5.2.2 development
  • globals ^16.0.0 development
  • jest ^30.0.0 development
  • prettier ^3.4.2 development
  • source-map-support ^0.5.21 development
  • supertest ^7.0.0 development
  • ts-jest ^29.2.5 development
  • ts-loader ^9.5.2 development
  • ts-node ^10.9.2 development
  • tsconfig-paths ^4.2.0 development
  • typescript ^5.7.3 development
  • typescript-eslint ^8.20.0 development
  • @nestjs/common ^11.0.1
  • @nestjs/config ^4.0.2
  • @nestjs/core ^11.0.1
  • @nestjs/jwt ^11.0.0
  • @nestjs/mapped-types ^2.1.0
  • @nestjs/passport ^11.0.5
  • @nestjs/platform-express ^11.0.1
  • @nestjs/swagger ^11.2.0
  • @prisma/client ^6.13.0
  • @scalar/api-reference ^1.34.2
  • @types/bcryptjs ^2.4.6
  • bcrypt ^6.0.0
  • bcryptjs ^3.0.2
  • class-transformer ^0.5.1
  • class-validator ^0.14.2
  • passport ^0.7.0
  • passport-jwt ^4.0.1
  • prisma ^6.13.0
  • reflect-metadata ^0.2.2
  • rxjs ^7.8.1
  • swagger-ui-express ^5.0.1