Implementació d'un XatBot amb eines de Vivecoding
🧠 Justificació: Vivecoding vs. programació tradicional
El vivecoding —programar amb ajuda d'IA en temps real— no és simplement "demanar codi a la IA". És un procés creatiu on el programador dirigeix, supervisa i refina. He triat aquest enfocament per raons tècniques concretes:
- Eficiència real: Amb programació tradicional, implementar el sistema complet (Flask + ngrok + widget + validació + estats + reinici) hauria trigat dies. Amb vivecoding i prompts encadenats, he iterat la solució en hores mantenint el control total del codi.
- Prompt Engineering com a habilitat tècnica: Saber formular un prompt precís és tan valuós com saber programar. He après a especificar constraints (seguretat, arquitectura, compatibilitat WordPress) en els prompts per obtenir codi directament utilitzable.
- Control i supervisió: He llegit i entès cada línia generada. Quan la IA proposava solucions insegures (API Key al JS) o ineficients (polling en comptes de websocket), les he rebutjat i reformulat el prompt.
- Arquitectura supervisada: La decisió Flask + ngrok (en comptes de serverless o Firebase) la vaig prendre jo, no la IA. El vivecoding em va permetre implementar-la ràpidament un cop decidida.
❌ Programació tradicional
- Aprendre Flask des de zero: 3-4 hores
- Debugar errors de CORS: 1-2 hores
- Implementar el widget: 2-3 hores
- Integrar Gemini API: 2 hores
- Total estimat: 8-11 hores
✅ Vivecoding amb IA
- Arquitectura dissenyada: 20 min
- Flask + ngrok operatiu: 45 min
- Widget complet: 30 min
- Iteració i millores: 1 hora
- Total real: ~2,5 hores
1. Prompt Engineering i Iteració Prompts encadenats
Domini avançat del llenguatge natural per guiar la IA en múltiples iteracions
He usat prompts encadenats i refinats: cada prompt partia del resultat anterior i afinava un aspecte concret. No he acceptat mai el primer resultat sense revisar-lo críticament.
Arquitectura inicial
Detecció d'un problema de seguretat
Afegir memòria de conversa
Millora del disseny UI
Refinament final i integració WordPress
2. Qualitat de la interfície (UI/UX) Professional + Modern
Disseny que supera la versió estàndard: animacions, historial visual, responsive
He dissenyat una interfície que supera el widget estàndard en tots els aspectes, iterant el disseny amb prompts de refinament específics per a cada element visual.
✨ Animació de càrrega
Tres punts parpellejants mentre el backend processa. L'usuari sap exactament que el sistema està treballant.
💬 Historial visual
Bombolles diferenciades per color i posició. Scroll automàtic al missatge més recent. Timestamp visible.
🎨 Colors coherents
Degradat lila corporatiu coherent amb el portafolis. Variables CSS per fàcil manteniment.
📱 Responsive
Flotant 360px a escriptori, pantalla completa a mòbil. Testejat a Chrome, Firefox i Safari mòbil.
🔄 Botó reinici
Visible al header. Un clic neteja pantalla i backend. Confirmació visual immediata.
🟢 Indicador connexió
Punt verd al header indica que el servidor Flask està actiu. Canvia a vermell si hi ha error.
🎮 Demo del widget (simulació)
- ✅ Animació "Pensant..." mentre processa
- ✅ Bombolles diferenciades usuari/bot
- ✅ Tecla Enter per enviar
- ✅ Botó desactivat durant petició
- ✅ Scroll automàtic al nou missatge
- ✅ Reinici de conversa amb 1 clic
- ✅ Indicador de connexió activa (punt verd)
- ✅ Barra d'estat en temps real
Prova la demo escrivint un missatge. Al portafolis real, respon amb IA de Gemini.
3. Lògica d'integració i deploy Operatiu + Robust
Connectat amb Gemini API, publicat al portafolis, gestió d'estats completa
L'aplicació està connectada amb l'API de Gemini a través del backend Flask i desplegada al portafolis personal. El codi està estructurat en components clars i llegibles.
📊 Gestió d'estats del sistema
Evidències – Captures del procés de vivecoding
Documentació visual de cada fase: prompts, iteració i resultat final
Cadena de prompts encadenats
✓5 iteracions documentades amb resultat concret.
✓Cada prompt partia del resultat anterior.
Detecció i correcció d'error de seguretat
✓Vaig detectar la clau visible al JS i la vaig rebutjar.
✓Prompt de correcció específic per refactoritzar.
Deploy operatiu a Google Colab
✓Servidor Flask + ngrok actiu amb URL pública.
✓Endpoints /ask i /reset responen correctament.
Interfície final del widget
✓Degradat lila, punt verd connexió, animació dots.
✓Supera el disseny estàndard en qualitat visual.
Evolució visual en 5 iteracions
✓De widget bàsic gris a interfície lila professional.
✓Cada iteració va afegir una funcionalitat concreta.
Widget operatiu al portafolis real
✓Conversa real capturada al portafolis de Tarik.
✓Respon amb IA sobre el contingut del lloc web.
✅ Compliment integral de la rúbrica
Implementació d'un XatBot amb eines de Vivecoding · Prompt Engineering · Gemini API
