Skip to content

sistema de punto de venta (POS) construido con React con TypeScript

Notifications You must be signed in to change notification settings

Maycol-Rodriguez/React-Pos

Repository files navigation

Sistema de Punto de Venta (POS) - React POS

Este proyecto consiste en un sistema de punto de venta (POS) diseñado específicamente para uso interno. Se ha elegido React como la tecnología principal para su desarrollo debido a su flexibilidad, eficiencia y amplio ecosistema de herramientas y librerías. La decisión de no usar Next.js se basa en la naturaleza interna de la aplicación, donde la renderización del lado del servidor y las funcionalidades relacionadas con SEO no son críticas.

Objetivo

El objetivo principal de este sistema es proporcionar una solución robusta, ágil y fácil de usar para la gestión de ventas, inventario y clientes dentro de una organización. Busca optimizar los procesos internos, mejorar la experiencia de los usuarios y proporcionar datos valiosos para la toma de decisiones.

Tecnologías y Librerías

El proyecto está construido utilizando las siguientes tecnologías y librerías:

  • React: Para la construcción de la interfaz de usuario.
  • TypeScript: Para la tipificación estática y la mejora de la calidad del código.
  • ESLint: Para el linting y formateo del código.
  • NextUI: Como librería de componentes.
  • Vite: Como herramienta de construcción y desarrollo local.
  • React Router Dom: Para la gestión de rutas.
  • TanStack Query: Para la gestión de consultas.
  • Axios: Para las solicitudes HTTP.
  • Sonner: Para notificaciones.
  • Zustand: Para el manejo del estado global.
  • React Hook Form: Para la gestión de formularios.
  • React Icons: Para iconos.
  • TailwindCSS: Para el diseño y estilos.
  • Framer Motion: Para animaciones.
  • Además, se utilizan otras librerías para validación de formularios, manejo de consultas, y más, detalladas en el archivo package.json del proyecto.

Metodología

El desarrollo del proyecto sigue una metodología ágil, centrada en la entrega continua de valor, con iteraciones cortas y feedback frecuente. Se enfatiza la colaboración, la adaptabilidad y la mejora continua.

Contribuciones

Las contribuciones son bienvenidas. Si estás interesado en contribuir al proyecto, por favor revisa las siguientes directrices:

  1. Reporte de Bugs: Si encuentras un error, por favor crea un issue detallando el problema.
  2. Sugerencias de Mejoras: Si tienes ideas para mejorar el sistema, siéntete libre de abrir un issue para discutirlas.
  3. Pull Requests: Si deseas contribuir directamente con código, asegúrate de seguir las convenciones de código establecidas y de realizar pruebas adecuadas.

Formato de Contribuciones

Para mantener la calidad y coherencia del código, por favor sigue estas pautas al contribuir:

  • Estilo de Código: Asegúrate de seguir el estilo de código definido por Prettier y ESLint. Puedes verificar tu código ejecutando pnpm run lint y formatearlo con pnpm run format.
  • Documentación: Actualiza la documentación relevante si estás añadiendo o cambiando funcionalidades.

Levantar el Proyecto en Local

Para levantar el proyecto en tu entorno local, sigue estos pasos:

  1. Clona el repositorio a tu máquina local.
  2. Instala las dependencias del proyecto ejecutando pnpm install en la raíz del directorio del proyecto.
  3. Inicia el servidor de desarrollo ejecutando pnpm run dev. Esto abrirá el proyecto en tu navegador predeterminado.
  4. Para construir el proyecto para producción, puedes ejecutar pnpm run build.

Si encuentras algún problema al levantar el proyecto, no dudes en crear un issue en el repositorio.

Autor