diff --git a/ADDING-YOUR-PHOTO.md b/ADDING-YOUR-PHOTO.md
deleted file mode 100644
index 589c56a..0000000
--- a/ADDING-YOUR-PHOTO.md
+++ /dev/null
@@ -1,72 +0,0 @@
-# CΓ³mo AΓ±adir tu Foto al CV
-
-## πΈ Paso 1: Prepara tu Foto
-
-1. **Busca una foto profesional** (preferiblemente tipo LinkedIn)
-2. **Formato recomendado**: JPG o PNG
-3. **TamaΓ±o**: Al menos 300x300 pΓxeles (cuadrada es mejor)
-4. **Calidad**: Fondo neutro, buena iluminaciΓ³n
-
-## π Paso 2: Guarda la Foto
-
-Guarda tu foto en:
-```
-static/images/profile/photo.jpg
-```
-
-Puedes usar cualquiera de estos nombres:
-- `photo.jpg` β (recomendado)
-- `photo.png` (cambiar en template)
-- `profile.jpg` (cambiar en template)
-
-## π Paso 3: Actualizar (si usas otro nombre)
-
-Si tu foto se llama diferente a `photo.jpg`, edita `templates/cv-content.html`:
-
-```html
-
-
-
-
-
-```
-
-## πΌοΈ Descargar desde LinkedIn
-
-### OpciΓ³n 1: Manualmente
-1. Abre tu perfil de LinkedIn
-2. Click derecho en tu foto β "Guardar imagen como..."
-3. GuΓ‘rdala como `photo.jpg` en `static/images/profile/`
-
-### OpciΓ³n 2: Desde tu sitio actual
-Si ya tienes tu foto en https://juan.andres.morenoyrubio.com:
-
-```bash
-cd static/images/profile
-# Abre el inspector del navegador, busca tu foto, y copia la URL
-curl -o photo.jpg "URL_DE_TU_FOTO"
-```
-
-## β Verificar
-
-1. Reinicia el servidor: `./cv-server`
-2. Abre http://localhost:1999
-3. DeberΓas ver tu foto en la esquina superior izquierda
-
-Si no funciona, verΓ‘s un placeholder gris con el texto "Add your photo".
-
-## π¨ Ajustar el TamaΓ±o (Opcional)
-
-La foto se muestra como un cΓrculo de 120px. Para cambiar el tamaΓ±o, edita `static/css/main.css`:
-
-```css
-.cv-photo {
- width: 150px; /* Cambiar aquΓ */
- height: 150px; /* Y aquΓ */
- border-radius: 50%;
-}
-```
-
----
-
-**Nota**: El template ya incluye un fallback automΓ‘tico al placeholder si la foto no existe, asΓ que el sitio funcionarΓ‘ con o sin foto.
diff --git a/DEPLOYMENT_SETUP.md b/DEPLOYMENT_SETUP.md
deleted file mode 100644
index 414bf68..0000000
--- a/DEPLOYMENT_SETUP.md
+++ /dev/null
@@ -1,320 +0,0 @@
-# Deployment Setup Guide
-
-This guide will help you configure GitHub Actions for automatic deployment of your CV site.
-
-## Overview
-
-The deployment system is now fully configured with:
-- β GitHub Actions workflows (`.github/workflows/`)
-- β Deployment scripts (`scripts/`)
-- β Systemd service configuration (`config/systemd/cv.service`)
-- β Updated Makefile with CI/CD targets
-
-## Required GitHub Secrets
-
-To enable automatic deployment, you need to configure these secrets in your GitHub repository:
-
-Go to: **Settings β Secrets and variables β Actions β New repository secret**
-
-### Essential Secrets
-
-| Secret Name | Value | Description |
-|------------|-------|-------------|
-| `SSH_PRIVATE_KEY` | Your private SSH key | Used to connect to the production server |
-| `SSH_HOST` | `localhost` or your server IP | Production server hostname |
-| `SSH_USER` | `txeo` | SSH username for deployment |
-| `SSH_PORT` | `22` (default) | SSH port (optional if using default) |
-
-### Optional Secrets
-
-| Secret Name | Description |
-|------------|-------------|
-| `SLACK_WEBHOOK` | Slack webhook URL for deployment notifications |
-
-## Setting Up SSH Key for GitHub Actions
-
-Since this machine is both the development and production server, you need to set up SSH access for GitHub Actions to deploy here.
-
-### Option 1: Deploy to localhost (Recommended for same-machine setup)
-
-If GitHub Actions will run on the same machine, you can use localhost:
-
-```bash
-# Generate a deployment key (reusable for all projects)
-ssh-keygen -t ed25519 -C "github-actions-deployment" -f ~/.ssh/github-deploy -N ""
-
-# Add the public key to authorized_keys
-cat ~/.ssh/github-deploy.pub >> ~/.ssh/authorized_keys
-chmod 600 ~/.ssh/authorized_keys
-
-# Copy the private key to add to GitHub Secrets (use this for ALL projects)
-cat ~/.ssh/github-deploy
-# Copy the entire output (including BEGIN and END lines)
-```
-
-**GitHub Secrets Configuration:**
-- `SSH_PRIVATE_KEY`: (paste the private key output from above)
-- `SSH_HOST`: `localhost` or `127.0.0.1`
-- `SSH_USER`: `txeo`
-- `SSH_PORT`: `22`
-
-### Option 2: Deploy from GitHub hosted runners
-
-If using GitHub's hosted runners to deploy to this server:
-
-```bash
-# Generate a deployment key (reusable for all projects)
-ssh-keygen -t ed25519 -C "github-actions-deployment" -f ~/.ssh/github-deploy -N ""
-
-# Add the public key to authorized_keys
-cat ~/.ssh/github-deploy.pub >> ~/.ssh/authorized_keys
-
-# Get your public IP address
-curl ifconfig.me
-
-# Copy the private key (use this for ALL projects)
-cat ~/.ssh/github-deploy
-```
-
-**GitHub Secrets Configuration:**
-- `SSH_PRIVATE_KEY`: (paste the private key output)
-- `SSH_HOST`: (your public IP from `curl ifconfig.me`)
-- `SSH_USER`: `txeo`
-- `SSH_PORT`: `22`
-
-## Reusing Secrets Across Multiple Projects
-
-**Important**: If you have multiple projects deploying to the same server, use **one shared SSH key** for all of them.
-
-### Why One Shared Key?
-
-β **Advantages:**
-- **Simpler management** - One key to rotate/update instead of multiple
-- **Same access level** - All projects deploy as the same user anyway
-- **Easier setup** - Generate once, reuse everywhere
-- **Standard practice** - CI/CD systems typically use one deploy key per server
-
-β **You don't need separate keys because:**
-- All projects deploy to the same server
-- All projects use the same user account (`txeo`)
-- Separation is already handled by different deployment paths and services
-
-### Shared Secrets (Same for All 3+ Projects)
-
-Copy these exact same values to all your project repositories:
-- `SSH_PRIVATE_KEY` - The `~/.ssh/github-deploy` key you generated once
-- `SSH_HOST` - Same server (localhost or your IP)
-- `SSH_USER` - Same user (`txeo`)
-- `SSH_PORT` - Same SSH port (`22`)
-- `SLACK_WEBHOOK` - Same notification channel (optional)
-
-### Project-Specific Configuration
-
-Only change these in each project's `.github/workflows/deploy.yml` (in the `env` section):
-
-| Project | APP_NAME | SERVICE_NAME | DEPLOY_PATH | PORT |
-|---------|----------|--------------|-------------|------|
-| CV Site | cv-server | cv | /home/txeo/Git/yo/cv | 1999 |
-| Project 2 | project2-server | project2 | /home/txeo/Git/yo/project2 | 2000 |
-| Project 3 | project3-server | project3 | /home/txeo/Git/yo/project3 | 2001 |
-
-### Setup Process
-
-1. **Generate SSH key once** on the server:
- ```bash
- ssh-keygen -t ed25519 -C "github-actions-deployment" -f ~/.ssh/github-deploy -N ""
- cat ~/.ssh/github-deploy.pub >> ~/.ssh/authorized_keys
- ```
-
-2. **Copy the key** for use in all projects:
- ```bash
- cat ~/.ssh/github-deploy
- ```
-
-3. **Add to each repository's GitHub Secrets** (same values):
- - Repository 1 (cv) β Add secrets
- - Repository 2 (project2) β Add **same** secrets
- - Repository 3 (project3) β Add **same** secrets
-
-4. **Customize each workflow** by editing only the `env` section in `deploy.yml`
-
-## Service Configuration
-
-The systemd service configuration has been created at:
-- **Template**: `config/systemd/cv.service`
-- **Active service**: `/etc/systemd/system/cv.service`
-
-### Update the Active Service (if needed)
-
-If you want to use the new service template with better security settings:
-
-```bash
-# Update the systemd service
-make update-service
-
-# Or manually:
-sudo cp config/systemd/cv.service /etc/systemd/system/
-sudo systemctl daemon-reload
-sudo systemctl restart cv
-sudo systemctl status cv
-```
-
-## Testing the Deployment Locally
-
-Before pushing to GitHub, you can test the deployment scripts locally:
-
-```bash
-# Build the binary
-make ci-build
-
-# Test the deployment script
-cd build
-tar -czf cv-server-test.tar.gz cv-server
-cd ..
-mv build/cv-server-test.tar.gz ./cv-server.new
-chmod +x scripts/deploy.sh
-./scripts/deploy.sh cv-server cv
-
-# Check service status
-systemctl status cv
-
-# Test health check
-make health-check
-```
-
-## Deployment Workflow
-
-Once configured, the deployment works automatically:
-
-1. **Push to main branch** β Triggers deployment
-2. **Run tests** β Ensures code quality
-3. **Build binary** β Creates production binary
-4. **Deploy to server** β Uploads and installs new version
-5. **Health check** β Verifies deployment success
-6. **Send notification** β (if Slack webhook configured)
-
-### Manual Deployment
-
-You can also trigger deployment manually:
-
-1. Go to **Actions** tab in GitHub
-2. Select **Deploy CV Site to Production**
-3. Click **Run workflow**
-4. Choose options (e.g., skip tests)
-5. Click **Run workflow**
-
-## Rollback
-
-If a deployment fails or you need to rollback:
-
-```bash
-# View available backups
-./scripts/rollback.sh cv-server cv
-
-# Rollback to the most recent version
-./scripts/rollback.sh cv-server cv latest
-
-# Rollback to specific version (e.g., version #2)
-./scripts/rollback.sh cv-server cv 2
-```
-
-## Monitoring
-
-### Check Service Status
-
-```bash
-# Service status
-systemctl status cv
-
-# View logs
-journalctl -u cv -f
-
-# View recent logs
-journalctl -u cv -n 50 --no-pager
-```
-
-### Check Application Health
-
-```bash
-# Local health check
-curl http://localhost:1999/health
-
-# Public health check
-curl https://juan.andres.morenorub.io/health
-
-# Or use the make target
-make health-check
-```
-
-## File Structure
-
-```
-cv/
-βββ .github/
-β βββ workflows/
-β βββ deploy.yml # Main deployment workflow
-β βββ test.yml # Testing workflow
-βββ scripts/
-β βββ deploy.sh # Deployment script
-β βββ healthcheck.sh # Health check script
-β βββ rollback.sh # Rollback script
-βββ config/
-β βββ systemd/
-β βββ cv.service # Systemd service template
-βββ backups/ # (created during deployment)
-β βββ cv-server.* # Binary backups
-βββ Makefile # Build and deployment targets
-```
-
-## Troubleshooting
-
-### Deployment Fails with SSH Error
-
-```bash
-# Test SSH connection
-ssh -p 22 txeo@localhost "echo 'SSH works'"
-
-# Check SSH key permissions
-ls -la ~/.ssh/github-deploy
-# Should show: -rw------- (600)
-```
-
-### Service Won't Start
-
-```bash
-# Check service logs
-sudo journalctl -u cv -n 50
-
-# Test binary manually
-./cv-server
-
-# Check port availability
-sudo netstat -tlnp | grep 1999
-```
-
-### Health Check Fails
-
-```bash
-# Check if service is running
-systemctl is-active cv
-
-# Test health endpoint
-curl -v http://localhost:1999/health
-
-# Check firewall
-sudo ufw status
-```
-
-## Next Steps
-
-1. **Add GitHub Secrets** as documented above
-2. **Push to main branch** to trigger first deployment
-3. **Monitor the deployment** in GitHub Actions tab
-4. **Verify deployment** by checking https://juan.andres.morenorub.io
-
-## Support
-
-For issues or questions:
-- Check GitHub Actions logs in the **Actions** tab
-- Review systemd logs: `journalctl -u cv -f`
-- Review the main deployment guide: `GITHUB_ACTIONS_DEPLOYMENT_GUIDE.md`
diff --git a/Dockerfile b/Dockerfile
deleted file mode 100644
index 4fdd05b..0000000
--- a/Dockerfile
+++ /dev/null
@@ -1,46 +0,0 @@
-# Build stage
-FROM golang:1.25-alpine AS builder
-
-WORKDIR /app
-
-# Copy go mod files
-COPY go.mod ./
-
-# Download dependencies
-RUN go mod download
-
-# Copy source code
-COPY . .
-
-# Build binary
-RUN CGO_ENABLED=0 GOOS=linux go build -o cv-server -ldflags="-s -w" .
-
-# Runtime stage
-FROM alpine:latest
-
-# Install CA certificates for HTTPS
-RUN apk --no-cache add ca-certificates
-
-WORKDIR /root/
-
-# Copy binary from builder
-COPY --from=builder /app/cv-server .
-
-# Copy application files
-COPY templates templates/
-COPY data data/
-COPY static static/
-
-# Expose port
-EXPOSE 1999
-
-# Set production environment
-ENV GO_ENV=production
-ENV PORT=1999
-
-# Health check
-HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \
- CMD wget --no-verbose --tries=1 --spider http://localhost:1999/health || exit 1
-
-# Run the binary
-CMD ["./cv-server"]
diff --git a/ERROR-HANDLING-IMPLEMENTED.md b/ERROR-HANDLING-IMPLEMENTED.md
deleted file mode 100644
index 25a13fe..0000000
--- a/ERROR-HANDLING-IMPLEMENTED.md
+++ /dev/null
@@ -1,507 +0,0 @@
-# Error Handling Implementation β
-
-**Date:** October 30, 2025
-**Time Required:** 1 hour
-**Status:** Fully implemented and tested
-
----
-
-## π― Overview
-
-Comprehensive error handling system with user-friendly error toasts, bilingual messages, and smooth UX for all failure scenarios.
-
----
-
-## β What Was Implemented
-
-### 1. **Error Toast Component** (HTML)
-
-**Location:** `templates/index.html` (before `