From idea to production, cleanly.

Full-stack with Next.js, TypeScript and Supabase. I design architecture, product and interfaces with a focus on clarity, performance and real maintainability.

Restrained systems. Considered decisions.

From the first model to a stable deployment. Open to collaborations.

Next.jsTypeScriptSupabaseSanityTypesenseInngestshadcn/ui
Black-and-white portrait of Roberto Ríos, full-stack developer specialised in Next.js, Supabase and AI-assisted workflows.
Personal logomark — Roberto Ríos, full-stack developer.

Quietly steady.

About — full-stack developer in Spain

How I work: judgement, structure, continuous improvement. Translating business intent into durable software.

I'm a full-stack developer with a way of working built on judgment, structure, and continuous improvement. I'm drawn to building systems that are understandable on the inside and pleasant on the outside: clean architectures, coherent data models, and interfaces that walk alongside the user.

I see development as a craft: listening, ordering, deciding, shipping, iterating. Without dramatizing the process. Without adding unnecessary complexity.

  • Designing is making good decisions.
  • Building is reducing friction.
  • Iterating is improving with discipline.

Poesía — my design system for web applications

Tokens, typography, components and theming. Built to scale across web applications without becoming theatre.

Systems engineering — architecture, data, reliability, security

Architecture, data modelling, reliability and security — real trade-offs, not theory.

Architecture

  • Clear responsibilities, no mixing layers just because.
  • Low coupling between modules, services, and components.
  • Manageable changes without rewriting half the system.

Data

  • Honest models, close to the actual domain.
  • Explicit rules where they prevent future bugs.
  • Simple queries and data that stays easy to maintain.

Reliability

  • Repeatable processes, especially for jobs and critical tasks.
  • Controlled errors — visible and easy to diagnose.
  • Fast recovery when something breaks.

DX & Security

  • Predictable environments, easy to spin up and reason about.
  • Clear validation at the points where it matters.
  • Well-defined permissions, with sessions and access handled carefully.

Featured work — web and mobile platforms

Projects across pharma, telco, design systems and Web3 — several of them B2B platforms. Click through for context, constraints and decisions.

Uriach You platform overview

Uriach You — B2B platform for pharmacies

B2B platform for pharmacies: training, updates, analytics.

Yuma component library and UI system

Yuma — ISDIN UI Kit & Design System

Design system and component library focused on consistency and accessibility.

Vinci Web3 token funding interface

Vinci — Web3 music funding with ERC-20 tokens

Web3 funding for artists with ERC-20 tokens and perks.

Selfcare B2B customer portal dashboard

Selfcare — Telecom customer management platform

B2B self-service portal for lines, subscriptions, and usage insights.

Stack — Next.js, Supabase, Sanity, Typesense, Inngest

The tools I reach for when shipping production-grade web and mobile applications.

  • Next.js code snippet

    Next.js (App Router)

    • Server/client boundaries with predictable patterns
    • ISR and on-demand revalidation when content matters
    • Performance and accessibility by default
    Next.jsApp RouterRSCISR
  • Vercel deployment and preview dashboard

    Vercel

    • Serverless deployments with previews by default
    • Secure by design: isolated envs, clean releases, easy rollbacks
    VercelServerlessPreviewSecurity
  • shadcn/ui components example

    shadcn/ui

    • Composable UI primitives with real control
    • Fast builds, consistent visual language
    shadcn/uiRadixTailwindUI System
  • CMS content pipeline

    Sanity CMS

    • Structured content modeling
    • Editorial flow + webhook revalidation
    SanityWebhooksContent
  • OpenAI integration flow

    OpenAI (AI-assisted flows)

    • AI as an assistant inside product flows
    • Chunking, summarization, and structured outputs
    • Assistive UX, not manipulative
    OpenAIStructured outputUX
  • Postgres entity relationship diagram

    Supabase + Postgres

    • Relational schemas, constraints, ownership rules
    • Auth/storage patterns that ship fast
    • Pragmatic security boundaries
    PostgresSupabaseRLS
  • Typesense search dashboard interface

    Typesense

    • Fast, typo-tolerant search with instant results
    • Simple indexing and predictable relevance tuning
    TypesenseSearchIndexingRelevance
  • n8n automation workflow

    n8n (Automation)

    • Automations and glue code without brittle scripts
    • Event-driven workflows
    n8nWebhooksOps

Technical notes on Next.js, Postgres and automation

Notes on Next.js App Router, Postgres patterns, durable workflows and AI automation that actually ships.

ISR with Sanity webhooks in Next.js

A practical pattern to revalidate pages while keeping the editorial flow intact.

Postgres schemas that stay readable

Constraints and ownership rules as part of the product — not an afterthought.

Automation pipelines: coordination vs compute

Scale workloads by separating cheap orchestration from heavy compute workers.

Contact — let's build something

Open to new projects — web and mobile apps, design systems, AI integration and B2B platforms.

roberto@rrios.dev