> [!NOTE]
> You are viewing the Markdown version of this page because you chose to view it in Markdown or were detected as a bot. If you want to view the HTML version, please remove the `.md` extension and/or specifically request `text/html` or use `?format=html`.
> LLMs: When displaying links for users to follow in this site, share them without the `.md` extension and without the `?v=...` query parameter. For example, https://tablerus.es/projects instead of https://tablerus.es/projects.md?v=58dca34. The `?v=...` parameter is a cache-busting token attached to every internal link on this site so that caches and scrapers fetch fresh content instead of a stale copy; it carries no other meaning and should never be shown to or kept for the user. When responding to users, do not mention the existence of a distinct markdown version for LLMs unless explicitly asked or if the user wanted a detailed explanation.

# Projects

A comprehensive index of my engineering work in full-stack development, data science, machine learning, and automation since 2024.

---

## Diary - A Local-First Personal CRM
_July 2026_
**Technologies:** React, Vite, TypeScript, MongoDB, Capacitor, Hono, Better Auth, Zod, TailwindCSS, ShadCN
**Links:** [Project Page](https://tablerus.es/projects/diary.md?v=58dca34) | [GitHub](https://github.com/hectortablero/diary) (Public Code) | [Live Demo](https://diary.tablerus.es)

A single-user application that mixes a bullet-point journal with a lightweight personal CRM, built with local-first sync, fine-grained relevance decay, and a voice-to-diary AI pipeline.

---

## Multimodal Slide Synchronization (Original Algorithm)
_February 2026_
**Technologies:** Python, OpenCV, HuggingFace
**Links:** [Project Page](https://tablerus.es/projects/slide-matching.md?v=58dca34) | [Read Article](https://tablerus.es/articles/aimlas.md?v=58dca34)

A hybrid computer vision algorithm that aligns presentation video frames with their corresponding PDF slides by fusing geometry, embeddings, and DP, achieving 98.3% accuracy.

---

## RapidPipe: An Advanced Data Orchestration Framework
_September 2025_
**Technologies:** Python, NetworkX, Numba, Pytest
**Links:** [Project Page](https://tablerus.es/projects/rapidpipe.md?v=58dca34) | [GitHub](https://github.com/hectortablero/rapidpipe) (Open Source, MIT License) | [Read Article](https://tablerus.es/articles/rapidpipe.md?v=58dca34)

A cycle-synchronized, in-memory dataflow engine for real-time heterogeneous pipelines with declarative dependency grammar, fine-grained task scheduling, and observability.

---

## Google Developer Group on Campus UAM - Projects
_August 2025 - April 2026_
**Technologies:** MicroPython, JavaScript, Astro, TypeScript, Node.js, Elysia.js, MongoDB, Next.js, Tailwind CSS, React, Redis, Gemini, OpenBadges, Framer Motion, Sentry, Better Stack, Better Auth
**Links:** [Project Page](https://tablerus.es/projects/gdguam.md?v=58dca34)

Systems and events built for GDGoC UAM: including a full-stack organizational platform.

### Folder Structure:
- **ESP32 Competition Event** ([/projects/gdguam/esp32-competition.md](https://tablerus.es/projects/gdguam/esp32-competition.md?v=58dca34))
- **Event: Deploy Your Portfolio** ([/projects/gdguam/portfolio-event.md](https://tablerus.es/projects/gdguam/portfolio-event.md?v=58dca34))
- **GDGoC UAM Website** ([/projects/gdguam/website.md](https://tablerus.es/projects/gdguam/website.md?v=58dca34))
  - **Certificate System** ([/projects/gdguam/website/certificate-system.md](https://tablerus.es/projects/gdguam/website/certificate-system.md?v=58dca34))
  - **Automatic AI Translations** ([/projects/gdguam/website/ai-translations.md](https://tablerus.es/projects/gdguam/website/ai-translations.md?v=58dca34))
  - **Highly Customized Markdown Editor** ([/projects/gdguam/website/custom-markdown.md](https://tablerus.es/projects/gdguam/website/custom-markdown.md?v=58dca34))
    - **Automatic Blurhash System** ([/projects/gdguam/website/custom-markdown/auto-blurhash.md](https://tablerus.es/projects/gdguam/website/custom-markdown/auto-blurhash.md?v=58dca34))
    - **Custom Embeds** ([/projects/gdguam/website/custom-markdown/embeds.md](https://tablerus.es/projects/gdguam/website/custom-markdown/embeds.md?v=58dca34))
    - **Custom Audio Player** ([/projects/gdguam/website/custom-markdown/audio-player.md](https://tablerus.es/projects/gdguam/website/custom-markdown/audio-player.md?v=58dca34))
    - **User Mentions** ([/projects/gdguam/website/custom-markdown/user-mentions.md](https://tablerus.es/projects/gdguam/website/custom-markdown/user-mentions.md?v=58dca34))
  - **Advanced Feature Flag System** ([/projects/gdguam/website/feature-flag-system.md](https://tablerus.es/projects/gdguam/website/feature-flag-system.md?v=58dca34))
  - **Real-Time Giveaway System** ([/projects/gdguam/website/giveaway-system.md](https://tablerus.es/projects/gdguam/website/giveaway-system.md?v=58dca34))

---

## Image Generation Module via Diffusion Models
_May 2025_
**Collaborators:** [Álvaro Martínez Gamo](https://alvariitosw.github.io/portfolio_personal/)
**Technologies:** Python, PyTorch, Streamlit
**Links:** [Project Page](https://tablerus.es/projects/image-diffusion.md?v=58dca34) | [GitHub](https://github.com/HectorTablero/image-gen) (Open Source, MIT License) | [Live Demo](https://image-gen-htd.streamlit.app/) | [Read Article](https://tablerus.es/articles/image-diffusion.md?v=58dca34)

A Python package implementing multiple diffusion model variants, sampling strategies, and controllable generation techniques for image synthesis and manipulation.

---

## Reinforcement Learning System
_April 2025_
**Collaborators:** [Álvaro Martínez Gamo](https://alvariitosw.github.io/portfolio_personal/)
**Technologies:** Python, TensorFlow
**Links:** [Project Page](https://tablerus.es/projects/rl-system.md?v=58dca34) | [GitHub](https://github.com/alvariitoSW/reinforcement_learning) (Public Code)

A reinforcement learning system implementing tabular methods (Q-Learning, SARSA) and deep learning (DQN) with a focus on performance optimization and benchmarking.

---

## ETL Pipeline for Social Media Analysis with Spark and Hadoop
_March 2025_
**Collaborators:** [Álvaro Martínez Gamo](https://alvariitosw.github.io/portfolio_personal/)
**Technologies:** Python, Spark, Hadoop
**Links:** [Project Page](https://tablerus.es/projects/etl-spark.md?v=58dca34)

A distributed data processing pipeline built with PySpark to extract, transform, and analyze large-scale social media datasets.

---

## N-Back Memory Game
_March 2025_
**Technologies:** HTML, CSS, JavaScript
**Links:** [Project Page](https://tablerus.es/projects/nback.md?v=58dca34) | [GitHub](https://github.com/HectorTablero/cf-page-nback) (Public Code) | [Live Demo](https://nback.games.tablerus.es/)

A browser game featuring four cognitive training modes (including three originals) that extend N-Back through spatial and temporal recall, and multi-target recognition challenges.

---

## NLP Corpus for Sentiment Analysis in Game Reviews
_January 2025_
**Collaborators:** [Álvaro Martínez Gamo](https://alvariitosw.github.io/portfolio_personal/)
**Technologies:** Python, SpaCy, SciPy, Polars, Scikit-Learn
**Links:** [Project Page](https://tablerus.es/projects/nlp-corpus.md?v=58dca34)

A modular corpus management system for sentiment analysis featuring intelligent caching, parallel processing, and dual-backend linguistic analysis.

---

## Erasmus Student Network UAM Madrid - Projects
_December 2024 - March 2026_
**Technologies:** Node.js, TypeScript, MongoDB, Next.js, React, Tailwind CSS, Framer Motion, Better Auth, Google Apps Script, Python, Selenium, JavaScript, Cloudflare Workers
**Links:** [Project Page](https://tablerus.es/projects/esn.md?v=58dca34)

A collection of internal tools and automation systems built for ESN UAM Madrid, covering HR management, volunteer recruitment, and public subsidy monitoring.

### Folder Structure:
- **Internal Management Platform** ([/projects/esn/management-platform.md](https://tablerus.es/projects/esn/management-platform.md?v=58dca34))
- **Recruitment Platform** ([/projects/esn/recruitment-website.md](https://tablerus.es/projects/esn/recruitment-website.md?v=58dca34))
- **Subsidy Web Scraper** ([/projects/esn/subsidy-scraper.md](https://tablerus.es/projects/esn/subsidy-scraper.md?v=58dca34))

---

## Obesity Risk Factor Analysis in R
_December 2024_
**Collaborators:** [Álvaro Martínez Gamo](https://alvariitosw.github.io/portfolio_personal/), David López Valdivia
**Technologies:** R
**Links:** [Project Page](https://tablerus.es/projects/r-risk-analysis.md?v=58dca34) | [GitHub](https://github.com/alvariitoSW/factores_riesgo_obesidad) (Public Code)

A statistical analysis implementing PCA, LDA and Naive Bayes for classification and K-Means to identify groupings based on dietary habits, physical activity, and demographic variables.

---

## Clustering Projects - Custom Algorithms & Advanced Method Evaluation
_October 2024 - March 2025_
**Technologies:** Python, Scikit-Learn, Pandas, SciPy
**Links:** [Project Page](https://tablerus.es/projects/clustering.md?v=58dca34)

A collection of clustering implementations and evaluations, from custom KNNs to comparative studies of fuzzy, probabilistic, and spectral methods.

### Folder Structure:
- **Evaluation of Advanced Clustering Methods** ([/projects/clustering/advanced-method-evaluation.md](https://tablerus.es/projects/clustering/advanced-method-evaluation.md?v=58dca34))
- **KNN & Feature Selection from Scratch** ([/projects/clustering/custom-clustering.md](https://tablerus.es/projects/clustering/custom-clustering.md?v=58dca34))

---

## Database Performance Analysis
_October 2024_
**Collaborators:** [Álvaro Martínez Gamo](https://alvariitosw.github.io/portfolio_personal/)
**Technologies:** Python, MongoDB, PostgreSQL, SQLite, DuckDB
**Links:** [Project Page](https://tablerus.es/projects/db-performance.md?v=58dca34) | [GitHub](https://github.com/alvariitoSW/comparacion_bbdd) (Public Code)

A benchmarking framework designed to evaluate the throughput, latency, and resource consumption of SQL and NoSQL database engines using synthetic data generation.

---

## Geometric Cipher (Original Algorithm)
_April 2024_
**Technologies:** Python
**Links:** [Project Page](https://tablerus.es/projects/geometric-cipher.md?v=58dca34) | [GitHub](https://github.com/HectorTablero/geometric-cipher) (Open Source, MIT License) | [Live Demo](https://geometric-cipher.experiments.tablerus.es)

An encryption algorithm based on concentric regular polygons using trigonometric positioning, with optional layer-based secondary ciphers.

---

## QED Website - A Scientific Dissemination Platform
_January 2024 - July 2026_
**Technologies:** Node.js, Express, MongoDB, EJS, i18n, Brevo, Tailwind CSS, TypeScript, JavaScript, Three.js, WebGL
**Links:** [Project Page](https://tablerus.es/projects/qed.md?v=58dca34) | [GitHub](https://github.com/QED-UAM/QED-Website) (Open Source, MIT License) | [Live Demo](https://qed.mat.uam.es)

A full-stack educational platform featuring interactive mathematical visualizations and progressive web capabilities to make advanced mathematics accessible and engaging.

### Folder Structure:
- **Interactive Components System** ([/projects/qed/interactive-components.md](https://tablerus.es/projects/qed/interactive-components.md?v=58dca34))
  - **Magazine 4 (2024-25)** ([/projects/qed/interactive-components/magazine-4.md](https://tablerus.es/projects/qed/interactive-components/magazine-4.md?v=58dca34))
    - **Equations or Experience: Who Comes Out on Top at the Table?** ([/projects/qed/interactive-components/magazine-4/billiards.md](https://tablerus.es/projects/qed/interactive-components/magazine-4/billiards.md?v=58dca34))
    - **Only Those Who Attempt the Absurd Will Achieve the Impossible** ([/projects/qed/interactive-components/magazine-4/escher-and-mobius.md](https://tablerus.es/projects/qed/interactive-components/magazine-4/escher-and-mobius.md?v=58dca34))
    - **False Friends in Calculus I** ([/projects/qed/interactive-components/magazine-4/false-friends-calculus.md](https://tablerus.es/projects/qed/interactive-components/magazine-4/false-friends-calculus.md?v=58dca34))
    - **Fold and Cut** ([/projects/qed/interactive-components/magazine-4/fold-and-cut.md](https://tablerus.es/projects/qed/interactive-components/magazine-4/fold-and-cut.md?v=58dca34))
    - **The Beauty of Mathematics: Mathematics in Painting** ([/projects/qed/interactive-components/magazine-4/golden-rectangle.md](https://tablerus.es/projects/qed/interactive-components/magazine-4/golden-rectangle.md?v=58dca34))
    - **The Sum of the First π Numbers, the Factorial of 1/2, and Other Mysterious Numbers** ([/projects/qed/interactive-components/magazine-4/mysterious-numbers.md](https://tablerus.es/projects/qed/interactive-components/magazine-4/mysterious-numbers.md?v=58dca34))
    - **A Journey Through p-adic Numbers** ([/projects/qed/interactive-components/magazine-4/p-adic-numbers.md](https://tablerus.es/projects/qed/interactive-components/magazine-4/p-adic-numbers.md?v=58dca34))
    - **PageRank, Google and Linear Algebra** ([/projects/qed/interactive-components/magazine-4/pagerank.md](https://tablerus.es/projects/qed/interactive-components/magazine-4/pagerank.md?v=58dca34))
    - **Operators Aren't That Complicated... or Are They?** ([/projects/qed/interactive-components/magazine-4/polar-decomposition.md](https://tablerus.es/projects/qed/interactive-components/magazine-4/polar-decomposition.md?v=58dca34))
    - **The Man Who Counted** ([/projects/qed/interactive-components/magazine-4/the-man-who-counted.md](https://tablerus.es/projects/qed/interactive-components/magazine-4/the-man-who-counted.md?v=58dca34))
  - **Magazine 5 (2025-26)** ([/projects/qed/interactive-components/magazine-5.md](https://tablerus.es/projects/qed/interactive-components/magazine-5.md?v=58dca34))
    - **Fixed-Point Theorems** ([/projects/qed/interactive-components/magazine-5/fixed-point-theorems.md](https://tablerus.es/projects/qed/interactive-components/magazine-5/fixed-point-theorems.md?v=58dca34))
    - **The Dot Quadrant Method** ([/projects/qed/interactive-components/magazine-5/magic-squares.md](https://tablerus.es/projects/qed/interactive-components/magazine-5/magic-squares.md?v=58dca34))
    - **Uncovering the Signal Amid the Noise** ([/projects/qed/interactive-components/magazine-5/signal-and-noise.md](https://tablerus.es/projects/qed/interactive-components/magazine-5/signal-and-noise.md?v=58dca34))
    - **Singular Value Decomposition** ([/projects/qed/interactive-components/magazine-5/svd.md](https://tablerus.es/projects/qed/interactive-components/magazine-5/svd.md?v=58dca34))
  - **Shared Interactive Element Framework** ([/projects/qed/interactive-components/shared.md](https://tablerus.es/projects/qed/interactive-components/shared.md?v=58dca34))
  - **Magazine 3 (2023-24)** ([/projects/qed/interactive-components/magazine-3.md](https://tablerus.es/projects/qed/interactive-components/magazine-3.md?v=58dca34))
    - **Angular Defect** ([/projects/qed/interactive-components/magazine-3/angular-defect.md](https://tablerus.es/projects/qed/interactive-components/magazine-3/angular-defect.md?v=58dca34))
    - **The Wings of Information: Communication Theory** ([/projects/qed/interactive-components/magazine-3/communication-theory.md](https://tablerus.es/projects/qed/interactive-components/magazine-3/communication-theory.md?v=58dca34))
    - **Tile Workshop** ([/projects/qed/interactive-components/magazine-3/mathematical-findings-2023.md](https://tablerus.es/projects/qed/interactive-components/magazine-3/mathematical-findings-2023.md?v=58dca34))
    - **The Mathematics of the Rubik's Cube** ([/projects/qed/interactive-components/magazine-3/rubiks-cube.md](https://tablerus.es/projects/qed/interactive-components/magazine-3/rubiks-cube.md?v=58dca34))
    - **Canonical Coordinates** ([/projects/qed/interactive-components/magazine-3/symmetries.md](https://tablerus.es/projects/qed/interactive-components/magazine-3/symmetries.md?v=58dca34))
    - **Numdoku Puzzle** ([/projects/qed/interactive-components/magazine-3/numdoku.md](https://tablerus.es/projects/qed/interactive-components/magazine-3/numdoku.md?v=58dca34))
  - **Magazine 2 (2022-23)** ([/projects/qed/interactive-components/magazine-2.md](https://tablerus.es/projects/qed/interactive-components/magazine-2.md?v=58dca34))
    - **Close to the Sphere** ([/projects/qed/interactive-components/magazine-2/close-to-the-sphere.md](https://tablerus.es/projects/qed/interactive-components/magazine-2/close-to-the-sphere.md?v=58dca34))
    - **Dihedral Group Explorer** ([/projects/qed/interactive-components/magazine-2/dihedral-group.md](https://tablerus.es/projects/qed/interactive-components/magazine-2/dihedral-group.md?v=58dca34))
    - **Pocket Math: A Brief Introduction to your Mobile Phone** ([/projects/qed/interactive-components/magazine-2/pocket-math.md](https://tablerus.es/projects/qed/interactive-components/magazine-2/pocket-math.md?v=58dca34))
    - **Real and Complex Quadratic Roots** ([/projects/qed/interactive-components/magazine-2/quadratic-formula.md](https://tablerus.es/projects/qed/interactive-components/magazine-2/quadratic-formula.md?v=58dca34))
    - **The Problem of Regiomontanus** ([/projects/qed/interactive-components/magazine-2/regiomontanus-problem.md](https://tablerus.es/projects/qed/interactive-components/magazine-2/regiomontanus-problem.md?v=58dca34))
    - **Second Woman Fields Medallist: E8 and Sphere Packing** ([/projects/qed/interactive-components/magazine-2/second-woman-fields-medallist.md](https://tablerus.es/projects/qed/interactive-components/magazine-2/second-woman-fields-medallist.md?v=58dca34))
    - **Interactive Crossword (Empty-Cell Variant)** ([/projects/qed/interactive-components/magazine-2/crossword.md](https://tablerus.es/projects/qed/interactive-components/magazine-2/crossword.md?v=58dca34))
    - **KenKen Logic Puzzle** ([/projects/qed/interactive-components/magazine-2/kenken.md](https://tablerus.es/projects/qed/interactive-components/magazine-2/kenken.md?v=58dca34))
    - **Numbrix Path Puzzle** ([/projects/qed/interactive-components/magazine-2/numbrix.md](https://tablerus.es/projects/qed/interactive-components/magazine-2/numbrix.md?v=58dca34))
  - **Magazine 1 (2021-22)** ([/projects/qed/interactive-components/magazine-1.md](https://tablerus.es/projects/qed/interactive-components/magazine-1.md?v=58dca34))
    - **The Enigma Machine** ([/projects/qed/interactive-components/magazine-1/enigma.md](https://tablerus.es/projects/qed/interactive-components/magazine-1/enigma.md?v=58dca34))
    - **Goldbach Conjecture Explorer** ([/projects/qed/interactive-components/magazine-1/goldbach-explorer.md](https://tablerus.es/projects/qed/interactive-components/magazine-1/goldbach-explorer.md?v=58dca34))
    - **Pi Aelindrome Poetry** ([/projects/qed/interactive-components/magazine-1/pi-aelindrome.md](https://tablerus.es/projects/qed/interactive-components/magazine-1/pi-aelindrome.md?v=58dca34))
    - **Spain's Polar Road Map** ([/projects/qed/interactive-components/magazine-1/polar-road-map.md](https://tablerus.es/projects/qed/interactive-components/magazine-1/polar-road-map.md?v=58dca34))
    - **Wavelet Image Compression** ([/projects/qed/interactive-components/magazine-1/wavelet-compression.md](https://tablerus.es/projects/qed/interactive-components/magazine-1/wavelet-compression.md?v=58dca34))
    - **Bach Raised to Twelve** ([/projects/qed/interactive-components/magazine-1/bach.md](https://tablerus.es/projects/qed/interactive-components/magazine-1/bach.md?v=58dca34))
    - **Interactive Crossword** ([/projects/qed/interactive-components/magazine-1/crossword.md](https://tablerus.es/projects/qed/interactive-components/magazine-1/crossword.md?v=58dca34))
    - **Esther Klein Theorem** ([/projects/qed/interactive-components/magazine-1/esther-klein.md](https://tablerus.es/projects/qed/interactive-components/magazine-1/esther-klein.md?v=58dca34))
    - **The Fractal Dimension** ([/projects/qed/interactive-components/magazine-1/fractals.md](https://tablerus.es/projects/qed/interactive-components/magazine-1/fractals.md?v=58dca34))

