About the Project

Most financial calculators are generic and US-centric, so they quietly mislead anyone planning their finances under Spanish rules. Sextante is built specifically for the Spanish banking and tax system: a suite of FIRE (financial independence) and personal-finance calculators that model IRPF, wealth tax, gift tax and Social Security using the real 2026 brackets. Everything is bilingual (Spanish and English), with light and dark themes, strict TypeScript and accessibility throughout.

On top of the calculators, Sextante offers an aggregated portfolio: users manually add positions held across different banks and brokers and track their entire net worth in a single view, with up-to-date market quotes, currency conversion and P&L. A built-in "Aprende" wiki rounds it out with clear financial guides on compound interest, mortgages, investing and FIRE.

Sextante is a real product, not a learning exercise: it is live in production, self-hosted, and designed end to end with GDPR in mind (data export, cascading account deletion and management of connected apps).

Visit Sextante →

The MCP Server — Bring Your Own AI

Sextante's standout feature is a remote MCP (Model Context Protocol) server secured with full OAuth 2.1: Dynamic Client Registration, PKCE, audience binding, hashed tokens, and per-client consent and revocation. It lets users connect their own AI assistant — Claude, ChatGPT or any MCP-capable client — to securely read and write their real portfolio.

The philosophy is simple: you bring the LLM, Sextante exposes your data safely. Instead of bolting yet another chatbot onto the product, it turns a personal-finance app into a secure data source that any assistant can reason over — the part of the project I'm proudest of technically.

What's Inside

Four pillars, all sharing the same calculation core, design system and i18n layer:

Calculators

Spanish FIRE & tax engine

FIRE and personal-finance calculators with a real Spanish tax engine — IRPF, wealth and gift tax, and Social Security on 2026 brackets.

Portfolio

Aggregated net worth

Manually added positions from any bank or broker, unified with live market quotes, currency conversion and P&L.

Integration

Remote MCP + OAuth 2.1

Connect your own AI assistant to read and write your portfolio, gated by full OAuth 2.1 with per-client consent and revocation.

Learn

"Aprende" wiki

Clear, practical financial guides on compound interest, mortgages, investing and the path to financial independence.

Stack & Infrastructure

The frontend and BFF run on Next.js 16 (App Router, i18n with next-intl); the API is a separate NestJS 11 service backed by Drizzle ORM over PostgreSQL. Everything is containerized with Docker Compose, self-hosted, and deployed through GitHub Actions on a self-hosted runner behind nginx.

Authentication uses passwordless magic links with a JWT stored in an HttpOnly cookie. The whole product is built to a senior engineering bar: strict TypeScript with no shed code, full light/dark theming, accessibility, and a GDPR-first data model.