Santiago Nieto’s portfolio is a full-stack TypeScript application built with TanStack Start and React 19. Every section — profile data, repository cards, language charts, and the activity feed — is fetched live from the GitHub REST API and cached in a dual-layer snapshot store. The result is a portfolio that always reflects what’s actually shipping, with zero manual updates.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/santiagonieto09/portafolio/llms.txt
Use this file to discover all available pages before exploring further.
Quickstart
Clone, install, and launch the portfolio locally in under five minutes.
Configuration
Set up environment variables, GitHub tokens, and the sync secret.
Architecture
Understand how the GitHub integration, caching, and SSR pipeline work together.
API & Sync
Trigger cache invalidation and weekly re-syncs via the protected sync endpoint.
Key Features
Live GitHub Integration
Profile, repositories, languages, releases, and activity are all pulled from the GitHub REST API on each cold start and cached for a week.
Snapshot Cache
A dual-layer cache (in-memory + Cloudflare Cache API) serves a stale snapshot when GitHub is unavailable, so the portfolio never returns a broken page.
Repository Explorer
Full-text search across name, description, topics, and technologies; filter by language or framework; sort by last push, stars, creation date, or name.
Technology Detection
A rule-based engine maps languages, topics, and keywords to 25+ frameworks and tools — badges are generated automatically, no manual tagging required.
Language Chart
Byte-weighted language distribution chart rendered with GitHub’s official per-language color palette.
SSR & SEO
Server-side rendering with Open Graph, Twitter Card, JSON-LD structured data, canonical URLs, and an auto-generated sitemap.xml.
Getting Started
Configure environment variables
Copy
.env.example to .env and fill in your values. GITHUB_TOKEN is optional but raises the API rate limit from 60 to 5,000 requests per hour.Start the development server
The portfolio runs without any environment variables — GitHub’s unauthenticated API allows 60 requests per hour per IP. For production use, set
GITHUB_TOKEN to avoid hitting rate limits.