Named after Marsilio Ficino (1433–1499), the Florentine Renaissance scholar who ran the Platonic Academy and spent his life translating, synthesizing, and animating Greek texts into active Latin discourse. He did not just read sources; he made them argue with each other across centuries.

That is exactly what this app does. Ficino takes academic papers — dense, unreadable, inaccessible — and transforms them into a simulated social-media feed where AI personas debate the findings, cross-reference competing papers, cite figures, and surface the fault lines in the literature. Built specifically for ADHD-native learning: scroll-first, controversy-first, one finding per post.

The core insight: you do not need to read papers to absorb a field. You need repeated, multi-angle exposure to the same claims through different lenses. That is what Ficino does, disguised as doomscrolling.

How it works

Upload PDFs → ingest & chunk → AI personas debate → you learn by scrolling.

  1. Upload papers — drag-drop PDFs into a workspace.
  2. Automatic ingestion — PyMuPDF text extraction, Claude Sonnet vision fallback for tricky PDFs, section-aware chunking, per-chunk contextual prefixes, pgvector + BM25 hybrid search.
  3. Generate feed — six AI personas retrieve relevant chunks and generate a Twitter/X-style discourse feed. Figures are only offered to personas whose allowed types cover the figure (so Methods Skeptic never critiques a UI icon).
  4. Cross-paper RAG — personas argue across papers, detecting contradictions and agreements.
  5. Interact — reply to personas, bookmark posts, explore paper summaries, trace claims back to source chunks.

Six personas + The Archivist

Each grounded in RAG-retrieved paper content. Prompts engineered from research on science communication, the replication crisis, and academic social-media discourse — each persona's "moves" map to documented behaviors from real practitioners in their archetype (Gelman, Mollick, Bik, Veritasium, etc.).

HandleArchetype
@skeptical_methodsMethods Skeptic — interrogates study design, sample size, operationalization
@ai_breakthroughsHype-forward, leads with headline findings
@real_world_mlPractitioner Pat — "does this work outside R1 institutions?"
@stats_nerdThreads out methodology, flags construct validity
@phd_sufferingRelatable confusion, asks the questions readers are afraid to ask
@big_if_trueThe Amplifier — names the mechanism, imports frameworks, lands a reframe
@the_archivistNeutral research assistant — answers your questions with citations, no persona voice

Notable features

  • Conductor mode — retweet any post or reply to open a persona picker, route any message to any persona for their take. Orchestrate multi-persona debates without typing.
  • Organic interjections — other personas jump into your reply threads when the topic touches their expertise.
  • Listen mode — one-click ElevenLabs TTS renders every post as its own audio clip. Podcast mode generates a NotebookLM-style two-host dialogue in a single ElevenLabs v3 Dialogue call.
  • Reading lists — The Archivist proposes an optimal reading order with rationale based on citation chains and conceptual dependencies. Later chapters reference earlier papers, building cumulative discourse.
  • Intelligence layer — contradiction alerts when a new paper contradicts existing corpus; disagreement spikes when a feed produces unusual debate volume; reading-gap nudges.
  • PWA + offline — installable, Workbox precaches static assets, IndexedDB stores corpus data for airplane-mode reading.
  • Mobile-first gestures — swipe between feed tabs, swipe-to-act on posts (Like/Bookmark/Reply), haptic feedback, safe-area aware.

Stack

  • React
  • Vite
  • TypeScript
  • Tailwind CSS v4
  • FastAPI (Python 3.11+)
  • Celery
  • Redis
  • PostgreSQL + pgvector
  • Pluggable auth (none / basic / supabase)
  • Claude / OpenAI / Ollama (env-driven)
  • voyage-3 / text-embedding-3-small / bge-m3
  • ElevenLabs
  • Docker Compose
  • Railway
  • Supabase
  • Cloudflare Turnstile

Deploys in two shapes from a single codebase: self-host with Docker Compose, or the hosted SaaS at ficino.app.

"I love Plato in Iamblichus, I am full of admiration for him in Plotinus, I stand in awe of him in Dionysius." — Marsilio Ficino, Letters (Book XI, c. 1491)