Plataforma web que conecta clientes con profesionales verificados en áreas como fontanería, electricidad, carpintería, informática, diseño, construcción y más. Permite buscar, filtrar, contactar y contratar profesionales, mientras que los profesionales pueden publicar servicios, gestionar su perfil y recibir reseñas.
- Instalación
- Configuración
- Ejecución
- Uso del sistema
- Apartado técnico
- Créditos
Clona el repositorio:
bash git clone https://github.com/UCASV/TEKIT.git
- Node.js >= 18
- SQL Server 2019+ o PostgreSQL >= 14 (según entorno académico)
- Git
- npm >= 8
bash cd BE npm install
Crea .env:
env PORT=5000 DB_HOST=localhost DB_PORT=5432 DB_USER=tu_usuario DB_PASSWORD=tu_contraseña DB_NAME=tekit_db JWT_SECRET=tu_clave_secreta CORS_ORIGIN=http://localhost:5173
Crear base de datos (entorno PostgreSQL utilizado en documentación académica):
bash psql -U postgres CREATE DATABASE tekit_db; \q npm run migrate
bash cd FE/vite-project npm install
Crear .env:
env VITE_API_URL=http://localhost:5000/api
bash cd BE npm run dev
Disponible en: http://localhost:5000
bash cd FE/vite-project npm run dev
Disponible en: http://localhost:5173
- Clic en “Regístrate”.
- Completa datos personales.
- Selecciona Cliente.
- Acepta términos y confirma.
- Barra de búsqueda.
- Filtros: categoría, precio, ubicación, calificación.
- Resultados en tarjetas.
- Ver: experiencia, habilidades, proyectos, reseñas.
- Contacto vía WhatsApp o formulario.
- Editar datos.
- Historial.
- Reseñas recibidas.
- Calificar (1–5).
- Agregar comentario.
- Datos personales.
- Seleccionar Profesional.
- Completar profesión, experiencia, tarifa, descripción.
- Foto.
- Experiencia laboral.
- Habilidades.
- Certificaciones.
- Proyectos.
- Categoría.
- Título.
- Descripción.
- Precio (por hora, fijo o a consultar).
- Servicios activos.
- Contactos recibidos.
- Ingresos estimados.
- Acciones rápidas.
- Editar.
- Pausar.
- Eliminar.
- Notificaciones de contacto.
- Reseñas de clientes.
TEKIT es una plataforma web tipo marketplace que conecta clientes con profesionales de servicios en El Salvador. Incluye autenticación JWT, filtro avanzado de búsqueda, perfiles profesionales completos, panel de usuario, sistema de reseñas, servicios publicados y contacto con profesionales.
- Búsqueda avanzada con filtros.
- Perfiles profesionales completos.
- Reseñas y calificaciones.
- Panel de control para profesionales.
- Diseño responsive.
- Autenticación segura.
- Estadísticas y análisis.
- React 19.1.1
- React Router DOM 7.9.4
- Bootstrap 5 + React Bootstrap
- Axios
- Vite
- Lucide Icons
- Node.js (ES Modules)
- Express 5
- Microsoft SQL Server
- JWT (jsonwebtoken)
- bcryptjs
- mssql (Tedious)
React (SPA) | HTTP/REST | Express.js (Backend) | SQL Server (Database)
TEKIT/
├── BE/
│ ├── src/
│ │ ├── app.js
│ │ └── server.js
│ ├── config/
│ ├── controllers/
│ ├── models/
│ ├── routes/
│ ├── middlewares/
│ ├── utils/
│ ├── .env
│ └── createAdmin.js
│
└── FE/
└── vite-project/
├── public/
├── src/
│ ├── assets/
│ ├── components/
│ ├── screens/
│ ├── context/
│ ├── services/
│ ├── routes/
│ ├── hooks/
│ ├── utils/
│ ├── App.jsx
│ ├── main.jsx
│ └── index.css
├── .env.local
└── vite.config.js
Incluye:
- Tabla de Roles
- Usuarios
- Categorías
- Perfiles Profesionales
- Servicios
- Reseñas
- Contactos
- Vista vw_Profesionales_Completos
- Seed de roles y categorías
- JWT con expiración de 7 días.
- Middleware authenticate.
- Middleware authorize.
- Hash de contraseñas con bcrypt.
- Interceptor Axios para incluir token en headers.
Incluye ejemplos completos de:
- Generación de token.
- Validación.
- Estructura del AuthContext.
Incluye todos los endpoints:
- register
- login
- profile (GET y PUT)
- search
- detalles
- update profile
- create
- update
- delete (soft delete)
- listar servicios propios
- create
- update
- delete
- obtener reseñas por profesional
- listar
- obtener por ID
- estadísticas
- registrar contacto
- estadísticas de contactos
Todos los ejemplos JSON incluidos.
Incluye componentes:
- MainLayout
- Navbar
- Search
- PerfilContratante
- ProfilePage
- ServiceForm
- Categories
Con sus funcionalidades, props, validaciones y flujos internos.
Incluye entidades:
- Roles
- Usuarios
- Perfiles_Profesionales
- Servicios
- Reseñas
- Categorías
- Contactos
y la vista SQL completa.
Incluye:
- Hash bcrypt
- CORS
- Prevención SQL Injection
- XSS Protection
- Rate limiting
- Manejo de errores
Incluye:
- Variables producción
- Build frontend
- Configuración de hosting (Azure, Netlify, Vercel)
- Ejemplo completo de configuración NGINX
- Backup y restore SQL Server
- Flujo Git
- Ramas feature
- Commits convencionales
- Estándares de código para frontend y backend
PROYECTO FINAL - TEKIT
Integrantes:
- Andrea Pamela Álvarez Lopez - 00073824@uca.edu.sv
- Jeremías Alessandro Artiga Pérez - 00171124@uca.edu.sv
- Cesar Alejandro Chiquillo Vides - 00225424@uca.edu.sv
- Julio Alejandro Flores Diaz - 00018824@uca.edu.sv
- Luis Amílcar García Ruiz - 00114124@uca.edu.sv
Hecho con ❤ para conectar experto con clientes en El Salvador