2026-06-24 · DATA ROOM
Quoteforge Ai Api
Ship Spring Boot APIs at the speed of thought
ELEVATOR PITCH
AI-powered code generation platform that transforms natural language into production-ready Spring Boot microservices in seconds.
VALUE PROPOSITION
10x faster backend development by eliminating boilerplate and automating architecture decisions.
EXPLAINER.md
QuoteForge AI — EXPLAINER
Concepto
QuoteForge AI es una plataforma B2B SaaS que automatiza el procesamiento de Solicitudes de Cotización (RFQ) en el sector manufacturero. Inspirado en Korso (YC), el MVP elimina cientos de horas de trabajo manual mediante un agente IA que extrae datos estructurados, detecta inconsistencias y genera borradores de RFI listos para enviar al cliente.
Arquitectura
┌─────────────────────────────────────────────────────────┐
│ HTTP Clients (curl / Postman / Frontend) │
└───────────────────────┬─────────────────────────────────┘
│ REST (JWT Bearer)
┌───────────────────────▼─────────────────────────────────┐
│ Controllers (Spring MVC) │
│ AuthController · RfqController · DashboardController │
└───────────────────────┬─────────────────────────────────┘
│
┌───────────────────────▼─────────────────────────────────┐
│ Services │
│ AuthService — login / register │
│ RfqProcessingService — ingestion façade │
│ RfqAsyncProcessor — @Async pipeline (VirtualThread)│
│ LlmService — OCR text → structured JSON │
└──────────┬───────────────────────────┬──────────────────┘
│ │
┌──────────▼───────┐ ┌──────────▼──────────────────┐
│ Spring Data JPA │ │ RestClient (Spring 6) │
│ H2 (dev) │ │ OpenAI-compatible LLM API │
│ PostgreSQL (prod)│ │ (simulation mode default) │
└──────────────────┘ └─────────────────────────────┘
Decisiones clave
| Decisión | Razón |
|---|---|
Virtual Threads (rfqTaskExecutor) | Las llamadas I/O a LLM/OCR bloquean; Virtual Threads de Java 25 evitan el consumo de platform threads sin callbacks. |
| %%INLINE1%% en bean separado (%%INLINE2%%) | Evita el self-invocation problem de Spring AOP; el proxy sólo intercepta llamadas externas. |
Simulation mode (app.llm.simulate=true) | El MVP funciona sin API key externa; ideal para demos y CI. |
| JWT stateless | API REST sin sesión en servidor; escala horizontalmente. |
| H2 in-memory (dev) | Zero-config para desarrollo local; switch a PostgreSQL via application.yml. |
Modelo de Dominio
Company 1──* User
Company 1──* RequestForQuote 1──* QuotationItem
| Entidad | Descripción |
|---|---|
Company | Tenant manufacturero. |
| %%INLINE6%% | Ingenieros / compradores; implementa %%INLINE7%%. |
RequestForQuote | Documento RFQ + artefactos IA (JSON extraído, issues, borrador RFI). |
QuotationItem | Línea de item: número de parte, cantidad, material, fecha entrega. |
Endpoints
Autenticación (público)
| Método | Path | Descripción |
|---|---|---|
| %%INLINE10%% | %%INLINE11%% | Crea empresa + usuario ADMIN. Devuelve JWT. |
| %%INLINE12%% | %%INLINE13%% | Valida credenciales. Devuelve JWT. |
RFQs (requiere JWT)
| Método | Path | Descripción |
|---|---|---|
| %%INLINE14%% | %%INLINE15%% | Sube documento (multipart). Devuelve 202 con estado RECEIVED. |
| %%INLINE17%% | %%INLINE18%% | Lista paginada de RFQs de la empresa. |
| %%INLINE19%% | %%INLINE20%% | Detalle completo de un RFQ. |
| %%INLINE21%% | %%INLINE22%% | Filtra por estado del ciclo de vida. |
RECEIVED → ANALYZING → REQUIRES_CLARIFICATION | READY_TO_QUOTE → COMPLETED
Dashboard (requiere JWT)
| Método | Path | Descripción |
|---|---|---|
| %%INLINE24%% | %%INLINE25%% | Conteos por estado para la empresa. |
| %%INLINE26%% | %%INLINE27%% | N RFQs más recientes. |
Cómo Ejecutar
Pre-requisitos
- Java 25+
- Maven 3.9+
Arranque rápido (modo simulación, H2 in-memory)
cd solutions/2026-06-24-quoteforge-ai-api
mvn clean spring-boot:run
La app arranca en http://localhost:8080.
Cuenta demo pre-creada:
Email: demo@quoteforge.ai
Password: demo1234
Flujo de prueba con curl
# 1. Login
TOKEN=$(curl -s -X POST http://localhost:8080/api/v1/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"demo@quoteforge.ai","password":"demo1234"}' \
| jq -r .token)
# 2. Subir un RFQ (texto plano simulando un documento)
echo "Part: PN-TEST-001, Qty: 100 pcs, Material: Steel, Delivery: TBD" > /tmp/rfq.txt
curl -s -X POST http://localhost:8080/api/v1/rfqs \
-H "Authorization: Bearer $TOKEN" \
-F "file=@/tmp/rfq.txt" \
-F "title=Test RFQ June 2026"
# 3. Listar RFQs
curl -s http://localhost:8080/api/v1/rfqs \
-H "Authorization: Bearer $TOKEN" | jq .
# 4. Dashboard
curl -s http://localhost:8080/api/v1/dashboard/stats \
-H "Authorization: Bearer $TOKEN" | jq .
Conectar a PostgreSQL (producción)
Agregar a application.yml:
spring:
datasource:
url: jdbc:postgresql://localhost:5432/quoteforge
username: postgres
password: secret
jpa:
hibernate:
ddl-auto: update
database-platform: org.hibernate.dialect.PostgreSQLDialect
Conectar a un LLM real (OpenAI / compatible)
app:
llm:
simulate: false
api-key: sk-...
base-url: https://api.openai.com
model: gpt-4o
jwt:
secret: "tu-clave-secreta-de-al-menos-256-bits-aqui"
expiration: 86400000
Análisis de Negocio
Problema cuantificado
Equipos de cotización en pymes manufactureras procesan 50-200 RFQs/mes manualmente. Cada RFQ requiere ~2-4h de análisis (leer planos, extraer datos, detectar errores, redactar RFI). Con QuoteForge AI, este tiempo cae a minutos.
Modelo de monetización
| Tier | RFQs/mes | Precio |
|---|---|---|
| Starter | hasta 50 | $199/mes |
| Growth | hasta 200 | $499/mes |
| Enterprise | ilimitado | $1,200+/mes |
Ventaja competitiva
- Dominio manufacturero específico en los prompts IA.
- Integración nativa con ERPs vía REST (siguiente fase).
- Datos históricos de RFQs para fine-tuning del modelo.
Referencias
MVP FEATURES
- 01Natural language to REST endpoint generator
- 02JPA entity scaffolding
- 03OpenAPI spec auto-generation
- 04Docker Compose export
“The AI that speaks fluent Java”
Start Building Free
Flowforge Ai
82AI-powered code generation platform that transforms natural language into production-ready Spring Boot microservices in seconds.
Insight Pilot Api
82AI-powered code generation platform that transforms natural language into production-ready Spring Boot microservices in seconds.
Finshield Ai Api
82AI-powered code generation platform that transforms natural language into production-ready Spring Boot microservices in seconds.