2026-01-30 11:18:56 -03:00
2026-01-30 11:18:56 -03:00
2026-01-30 11:18:56 -03:00
2026-01-29 13:43:44 -03:00
2026-01-29 13:43:44 -03:00
2026-01-29 13:43:44 -03:00
2026-01-29 13:43:44 -03:00

📄 Motores Argentinos V2 - Plataforma de Clasificados de Vehículos

Build Status Platform Backend Frontend

Ecosistema digital completo para la publicación, búsqueda y gestión de avisos de compra-venta de autos y motos. Este proyecto representa la modernización integral del sistema legacy, optimizado para alto rendimiento, responsividad móvil y una experiencia de usuario premium con arquitectura orientada a servicios y contenedores.


🚀 Características Principales

  • Exploración Inteligente: Motor de búsqueda avanzado con filtros dinámicos por marca, modelo, versión, año, precio, combustible y ubicación.
  • Panel de Moderación Unificado: Interfaz para administradores que permite moderar avisos, chatear en tiempo real con vendedores y corregir datos técnicos desde una sola vista.
  • Gestión Multimedia Optimizada: Sistema de carga de imágenes con generación automática de thumbnails y visualización adaptada (aspect ratio 4:3) para evitar recortes en dispositivos móviles.
  • Pagos Integrados: Integración completa con Mercado Pago para la activación de avisos.
  • Soporte Multivehículo: Lógica diferenciada para Automóviles y Motocicletas (segmentos, transmisiones y atributos específicos).
  • Seguridad y SEO: Autenticación robusta via JWT, rutas protegidas, y estructura HTML semántica optimizada para motores de búsqueda.

🛠️ Stack Tecnológico

Backend (/Backend)

  • Framework: .NET 10.0 (C#)
  • Arquitectura: Web API con Inyección de Dependencias.
  • Base de Datos: SQL Server - Soporte multi-db (MotoresV2, Legacy Internet).
  • Seguridad: Autenticación JWT y políticas de CORS dinámicas.

Frontend (/Frontend)

  • Framework: React 19 + TypeScript.
  • Build Tool: Vite.
  • Estilos: Tailwind CSS (Diseño Glassmorphism & Dark Mode).
  • Iconografía: React Icons (FontAwesome).

Infraestructura

  • Docker: Orquestación completa con Docker Compose.
  • Gateway Unificado: Nginx configurado como Reverse Proxy interno para centralizar Web, API y carga de imágenes en un solo puerto seguro.

📦 Instalación y Despliegue

Prerrequisitos

  • Docker y Docker Compose.
  • Instancia de SQL Server accesible desde la red de Docker.

1. Clonar el Repositorio

git clone https://repo.eldiaservicios.com/dmolinari/MotoresArgentinosV2.git
cd MotoresArgentinosV2

2. Configuración de Entorno (.env)

El sistema utiliza archivos .env en las carpetas de Backend y Frontend para configuración local, pero el despliegue principal se controla desde docker-compose.yml.

Variables Críticas:

  • ConnectionStrings__MotoresV2: Base de datos principal.
  • AppSettings__FrontendUrl: URL(s) permitidas para acceso (soporta IP y dominio).
  • VITE_MP_PUBLIC_KEY: Clave pública de Mercado Pago para el frontend.

3. Ejecutar con Docker Compose

docker-compose up -d --build

El sistema estará disponible en el puerto 8086 (configurado para no colisionar con otros servicios del stack).


⚙️ Arquitectura de Red (Gateway)

Para simplificar el despliegue y mejorar la seguridad, el sistema utiliza un Proxy Inverso interno:

Ruta Externa Destino Interno Función
/ motores-frontend:80 Aplicación React (SPA)
/api/ motores-backend:8080/api/ Endpoints de la API .NET
/uploads/ motores-backend:8080/uploads/ Imágenes de vehículos

📂 Estructura del Proyecto

  • /Backend: Solución .NET con proyectos de Core (Dominio), Infrastructure (Datos/Servicios) y API (Endpoints).
  • /Frontend: Código fuente de la interfaz React, componentes reutilizables y estilos.
  • /MigrationTool: Herramientas para la sincronización de datos con el sistema legacy.

👨‍💻 Desarrollo Local

Backend:

cd Backend/MotoresArgentinosV2.API
dotnet run

Frontend:

cd Frontend
npm install
npm run dev

🛠️ Notas Técnicas y Fixes Recientes

  • Responsive Images: Se implementó object-contain sobre fondo oscuro para asegurar que unidades como motos se vean completas en móviles.
  • Doble Mundo: El sistema soporta simultáneamente acceso por IP de pruebas y dominio de producción mediante configuración flexible de CORS.
  • 0 KM Support: Se habilitó la validación y visualización específica para vehículos sin rodaje (0 KM / Año 0).
Description
No description provided
Readme 471 KiB
Languages
TypeScript 60.9%
C# 38.3%
CSS 0.4%
JavaScript 0.2%
Dockerfile 0.1%