Torna agli articoli

Costruire Sarion: un’AI-first web app con JavaScript, Gemini 2.5 e Mastra AI

Sarion logo

Pubblicato il 31/07/2025

Sarion è un’applicazione web che unisce gestione di attività e note con un assistente AI intelligente, accessibile da desktop e mobile, in un’interfaccia moderna e minimale.

Ma dietro l’esperienza utente semplice si nasconde un sistema tecnico solido, pensato per essere reattivo, estendibile e scalabile fin dall’inizio.

In questo articolo condivido lo stack che ho scelto, le tecnologie che ho utilizzato e alcune scelte progettuali dietro le quinte.

Tutto è stato costruito in JavaScript (sia frontend che backend) in circa 4 settimane, da una sola persona — sì, ho avuto il supporto di windsurf.

Un assistente AI reale, grazie a Mastra AI

Al cuore di Sarion c’è Mastra AI, un framework open-source JavaScript per agenti AI pensato per orchestrare modelli LLM in ambienti reali.

Mastra AI Screenshot

Mastra fornisce una struttura chiara per costruire agenti multi-step con strumenti, controlli e sicurezza integrata.

Cosa offre Mastra:

  • Architettura modulare per tool, prompt e ragionamento agentico
  • Supporto nativo a modelli Gemini, OpenAI, Claude, Mistral, Ollama
  • Gestione del ciclo di vita dell’agente tramite runtime context
  • Eventi, tracing, logging e strumenti di debug integrati
  • Full JavaScript / Node.js (nessun Python richiesto)
  • Edge runtime e streaming nativi

In Sarion uso Mastra per orchestrare un agente AI che capisce prompt naturali, scompone task complessi, decide cosa fare (creare task, chiedere chiarimenti, ecc.) e chiama i tool appropriati.

Il tutto mantenendo controllo, trasparenza e performance.

Gemini 2.5 Flash e Pro come modelli AI

Per il modello linguistico ho scelto Gemini 2.5 Pro e Flash di Google, tramite Vertex AI.

Entrambi i modelli offrono comprensione multimodale, reasoning avanzato e latency molto bassa, con differenze chiave:

  • Gemini 2.5 Flash è ottimizzato per risposte rapide e a basso costo.
  • Gemini 2.5 Pro ha capacità reasoning più sofisticate e supporta task complessi.

Al momento Sarion lavora unicamente con Gemini 2.5 Flash, ma è pronto e testato per supportare anche Gemini 2.5 Pro quando il numero di utenti sarà sufficientemente alto da poterne sovvenzionare l'utilizzo anche per gli utenti del piano free (anche se limitatamente).

Next.js 15 per il frontend e l’app server

L’applicazione è sviluppata con Next.js 15, sfruttando al massimo le novità introdotte:

  • App Router con layout annidati e server components
  • Supporto Edge Functions per le rotte AI-critical
  • Ottimizzazione integrata per streaming via Server-Sent Events
  • Routing dinamico, caching e API routes native

Next.js consente di tenere frontend e backend nello stesso progetto, mantenendo la coerenza tipica di un monorepo, ma con deploy estremamente ottimizzati.

Deploy su Vercel

Sarion è distribuito su Vercel, che offre:

  • Deploy automatici da Git
  • Supporto nativo a Edge Functions
  • CDN globale integrata
  • Performance eccellente per frontend statico e dinamico

Vercel si integra perfettamente con Next.js, riducendo al minimo il setup infrastrutturale e rendendo il deploy un non-problema.

Stripe per la gestione dei pagamenti

L’app offre un piano gratuito e uno a pagamento (con supporto AI esteso).

Per la parte di billing ho integrato Stripe, usando la Checkout API + webhooks.

Stripe gestisce:

  • Autenticazione sicura
  • Piani ricorrenti
  • Aggiornamento automatico dello stato utente (via webhook)

Comunicazione FE/BE con Upstash Redis

Una delle esigenze era notificare il frontend in tempo reale quando l’agente AI termina una risposta (o un ciclo di reasoning complesso).

Per questo uso Upstash Redis con Pub/Sub:

  • L’AI pubblica eventi su un canale Redis
  • Il frontend (via Server-Sent Events) li ascolta e aggiorna la UI
  • Tutto è serverless, scalabile e integrabile facilmente

Questo sistema sostituisce soluzioni più complesse come WebSocket server, mantenendo la leggerezza del progetto MVP.

Quanto ci vuole per costruire qualcosa così?

La domanda classica: “ok, ma quanto tempo serve e quante persone?”

Solo io, in 4 settimane, tra coding e windsurf.

Ovviamente conoscere bene lo stack aiuta: JavaScript, Next.js, AI APIs, orchestrazione agentica…

Ma credo sia una buona dimostrazione di cosa oggi si possa fare anche con un team minimo, se si parte da strumenti giusti e un’idea ben focalizzata.

Windsuft Editor Screenshot

Conclusioni

Sarion è un progetto reale, usato da utenti reali, costruito su uno stack moderno, serverless e AI-first.

Se ti interessano intelligenza artificiale applicata, MVP rapidi, micro team o semplicemente come costruire una web app AI-first con uno stack moderno, iscriviti alla newsletter o continua a seguire il blog.

👉 Prova Sarion su getsarion.com – anche solo per vedere come gira.

Parlami della tua idea

Hai un'idea che vuoi trasformare in realtà? Contattami per discutere come posso aiutarti a costruire il tuo MVP.

Contattami