Saltar al contenido
NightRaven77, inicio

SELECTED WORK / PROYECTOS

Ideas convertidas en software.

Aplicaciones web, herramientas de escritorio y automatización. Explora qué resuelve cada proyecto y las decisiones detrás de su construcción.

Captura de la interfaz de Equilibrium Vault

Ampliar captura ↗

FINANZAS / FULL-STACK

Equilibrium Vault

Finanzas personales y compartidas: gastos, tarjetas, suscripciones y metas de ahorro en una PWA.

  • Angular 19
  • FastAPI
  • Supabase
  • PostgreSQL
Ver repositorio
Explorar caso técnico

El problema

Reunir el seguimiento de finanzas personales y de pareja, incluyendo pagos recurrentes y gastos compartidos.

La solución

Una aplicación web instalable con dashboard, calendario, gestión de tarjetas y cálculo de saldos compartidos.

Arquitectura

Cliente Angular → API FastAPI → Supabase (PostgreSQL y Auth). El backend organiza endpoints, configuración, conexión y esquemas de validación.

Decisiones técnicas

  • Separar frontend y API para configurar su despliegue de forma independiente.
  • Usar Supabase Auth y políticas RLS para gestionar autenticación y acceso a los datos.
  • Organizar el frontend por funcionalidades y centralizar servicios HTTP e interceptores JWT.

Alcance y consideraciones

La puesta en marcha requiere configurar Supabase, las tablas y las políticas RLS, además de la conexión entre frontend y API.

Consultar documentación ↗
Captura de la interfaz de Gym Tracker

Ampliar captura ↗

PWA / OFFLINE-FIRST

Gym Tracker

Registro de rutinas de fuerza y progreso, con analítica y una guía visual de ejercicios.

  • FastAPI
  • JavaScript
  • Chart.js
  • SQLAlchemy
Ver repositorio
Explorar caso técnico

El problema

Registrar entrenamientos y consultar el progreso desde el móvil, incluso sin conexión.

La solución

Una PWA con rutinas, registro de cargas, gráficas de progreso, guía de ejercicios y respaldo de datos en JSON.

Arquitectura

Interfaz HTML y JavaScript con LocalStorage y service worker; API FastAPI con capa de repositorios y persistencia SQLAlchemy en SQLite o PostgreSQL.

Decisiones técnicas

  • Priorizar almacenamiento local y caché para el uso sin conexión, con sincronización cuando hay red.
  • Separar persistencia, modelos y autenticación en el backend.
  • Ofrecer exportación e importación JSON y una variante HTML autónoma.

Alcance y consideraciones

El respaldo JSON permite conservar los registros al borrar los datos del navegador. Las ilustraciones se atribuyen a workout-guide y Everkinetic bajo CC BY-SA 4.0.

Consultar documentación ↗

TEAMBUILDER / DAMAGE CALCULATOR

Vue 3 · TypeScript · FastAPI

ANÁLISIS / APLICACIÓN WEB

Pokémon Competitive Calculator

Construcción de equipos competitivos, cobertura de tipos y cálculo de daño en una interfaz reactiva.

  • Vue 3
  • TypeScript
  • Pinia
  • FastAPI
Ver repositorio
Explorar caso técnico

El problema

Comparar composiciones de equipo, sinergias de tipos y escenarios de daño competitivo.

La solución

Editor de equipos, calculadora de daño, matriz de cobertura, comparación de velocidad e intercambio de equipos en formato Showdown.

Arquitectura

Frontend Vue 3 con Composition API, TypeScript, Pinia y Axios; backend Python con FastAPI. Vite y bun para el cliente, uv para el backend.

Decisiones técnicas

  • Centralizar el estado del cliente con Pinia y el acceso HTTP con Axios.
  • Usar TypeScript en la interfaz y mantener frontend y backend en proyectos separados.
  • Incluir importación y exportación Showdown para intercambiar equipos en un formato existente.

Alcance y consideraciones

Los formatos y reglas competitivas admitidos están descritos en el repositorio. La importación y exportación utilizan el formato de texto Showdown.

Consultar documentación ↗
Captura de la interfaz de QR Studio Pro

Ampliar captura ↗

DESKTOP / PYTHON

QR Studio Pro

Creación de códigos QR personalizados con vista previa y exportación a formatos de imagen y vector.

  • Python
  • CustomTkinter
  • Pillow
  • qrcode
Ver repositorio
Explorar caso técnico

El problema

Crear códigos QR con distintos tipos de contenido y personalización visual desde una aplicación de escritorio.

La solución

Interfaz de generación con colores, estilos, logotipos y exportación PNG, SVG, PDF y JPEG.

Arquitectura

main.py contiene la interfaz; qrDinamico.py, el renderizado y exportación; payloads.py, el formateo del contenido. build_exe.py permite empaquetar para Windows.

Decisiones técnicas

  • Separar interfaz, construcción del contenido y motor de renderizado.
  • Combinar CustomTkinter para la GUI, qrcode para la matriz y Pillow para el tratamiento gráfico.
  • Ofrecer exportación raster y vectorial para distintos usos del código generado.

Alcance y consideraciones

El empaquetado para Windows utiliza PyInstaller. El proyecto incluye un script de compilación y requiere las dependencias de generación y de interfaz para ejecutarse desde código.

Consultar documentación ↗

Más repositorios

Otros proyectos y herramientas de mi catálogo.

NightRaven77

Build · Refine · Evolve

2024 – 2026 © Erick Mejía