Producto

PepperCRM

Un CRM modular para leads, tareas y comunicaciones, hecho en equipo

Un CRM construido por un equipo de cuatro para gestionar leads, tareas y comunicaciones, donde escribí casi todo el backend.

De qué se trata

PepperCRM es un CRM modular para gestionar clientes, ventas y oportunidades. Registra leads, los mueve por etapas en un tablero, asigna tareas y guarda los comentarios, archivos y correos de cada cliente. Lo construimos cuatro personas en la organización PepperTechDev entre febrero y noviembre de 2025.

Escribí casi todo el backend, desde la API en Spring Boot y su seguridad hasta su integración con MongoDB y Redis y su despliegue.

Qué hace

  • API en Spring Boot con Java 17 organizada por módulos de negocio, como usuarios, leads, tareas, etiquetas, comentarios, archivos, mensajes y correos.
  • Seguridad con Spring Security y JWT, un filtro que limita la tasa de peticiones y CORS configurado por entorno.
  • MongoDB Atlas como base de datos, Redis como caché y un servicio de correo asíncrono para las notificaciones.
  • Frontend en React y Vite con un tablero kanban para mover los leads entre etapas y la gestión de tareas.
  • Documentación con Swagger, imágenes en Docker Hub desplegadas en Render con un deploy hook, y manifiestos de Kubernetes en desarrollo.
  • Escribí 152 de los 154 commits hechos por personas en la API.

Cómo funciona

Cómo se arma PepperCRM

La app web habla con la API, que guarda en MongoDB, cachea en Redis y envía correos; la fila de abajo es la entrega.

  1. Web

    • React y Vite
    • Tablero kanban de leads
    • Formularios y tareas
  2. API

    • Spring Boot con Java 17
    • Spring Security, JWT y límite de tasa
    • Módulos de negocio
  3. Datos

    • MongoDB Atlas
    • Caché en Redis
    • Servicio de correo asíncrono

Entrega

  • Imágenes en Docker Hub
  • Despliegue en Render
  • Manifiestos de Kubernetes

Decisiones y sus costos

  1. Un módulo por cada parte del negocio

    Un CRM reúne leads, tareas, comentarios, archivos y correos, y cada parte tenía que poder probarse y cambiarse por separado.

  2. Límite de tasa en la API

    Un cliente mal configurado podía saturar la API.

Repositorios

Cada repositorio público del proyecto, con lo que contiene.

  • 2025

    PepperCRM-APIPepperTechDev

    API de PepperCRM con autenticación, leads, tareas, etiquetas, archivos y correos, documentada con Swagger.

    Java, Spring Boot, MongoDB, JWT
  • 2025

    PepperCRM-WebPepperTechDev

    App web de PepperCRM con tablero kanban, leads y tareas.

    React, Vite, Tailwind CSS
  • 2025

    PepperCRM-DBPepperTechDev

    Imagen de MongoDB de PepperCRM.

    MongoDB, Docker
  • 2025

    PepperCRM-CachePepperTechDev

    Imagen de Redis de PepperCRM.

    Redis, Docker
  • 2025

    PepperCRM-MailPepperTechDev

    Servicio de correo de PepperCRM para los entornos locales.

    Docker
Organización en GitHub: PepperTechDev

Stack

Elige una tecnología para ver qué proyectos la usan.