apps.samu.space: hobby projects

Over the past couple of years I have been building a lot of small apps on the side: language learning tools, AI toys, finance utilities, a few projects around veganism, AI technologies and other topics. They ended up scattered across subdomains, and I kept forgetting which ones still existed. So I put them all in one place: apps.samu.space.

This is a list of all the apps, as a somewhat personal summary of them.

# AI

  • AI News — Opinionated AI news feed that fetches from multiple sources, filters noise with an LLM, and serves a clean Next.js reader.
  • AI Street Smarts — Static AI literacy course with modules on prompting, privacy, verification, and safe tool use.
  • Bedtime Tutor — Software engineering and (French) language learning tutor with streamed LLM answers and TTS for late-night learning.
  • Flaubert — Literary chatbot grounded in Gustave Flaubert’s correspondence via a Chroma RAG stack.
  • Slide Generator — On-demand ambient educational slideshow generator: ask for a topic, get markdown slides you can leave running in the background while you are waiting for CI to run.
  • Speak It — Turn a topic prompt into a short spoken script with optional web search and ElevenLabs TTS. Great for very quick presentations.
  • Wikipedia Explorer — Graph tool that maps how Wikipedia topics connect, with Rabbit Hole and Cluster Map modes.

# French

  • Translation Practice — English-to-French translation drill with 1000 pre-generated B2-C2 sentences and LLM grading, fact checked and high quality, with hints and TTS.
  • French Vocabulary — C1/C2 vocab extractor from books and PDFs with spaced-repetition study and TTS (login required).
  • French Vocab Game — Visual B2/C2 vocabulary trainer with multiple learning modes, spaced repetition, and AI-generated images.
  • French Emoji Trainer — Reverse recall game: read a French definition, pick the matching emoji from four choices.
  • French Geography Quiz — Click-on-map quiz for French departments, regions, and cities.
  • French Word List — Mobile-first browsable French vocabulary list with mastered-word sync via Vercel KV.

# Tools

  • Brightmind Flashcards — AI-powered flashcard app with Google sign-in to sync progress across devices. Features a broad range of subjects and using external sources to minimize hallucination.
  • Context — Reveal.js slide deck on context engineering: why naive RAG fails and what belongs in model context at each step.
  • FIRE+ — Financial independence planner with Monte Carlo portfolio simulations.
  • Global Geo Quiz — World geography quiz with polygon and point modes, distance-based partial scoring. Fun and difficult to play.
  • Intelligence Timeline — Interactive report comparing human brain evolution and AI benchmark growth over time.
  • Interview Drill — Voice interview practice with an ElevenLabs conversational agent (Montreal AI, relocation story, French intro modes).
  • Netflix RT Top — Streamlit app ranking top Rotten Tomatoes movies on Netflix by country.
  • Rapsense — Rap lyrics analysis: upload audio or a YouTube URL, isolate vocals with Demucs, transcribe, and annotate phrases with an LLM. Not perfect but works.
  • Super Movies — Browse and search movies by popularity, cast, crew, and keywords over a pre-built TMDB dataset.

# Content

  • Plato on Animal Rights — Socratic dialogue blog exploring animal rights arguments in Plato’s voice, grounded in cited research.
  • Why Not Vegan — Evidence-based responses to common anti-vegan arguments, served from a single static JSON file.

# Personal and writing

  • Chat Archive — (private) ChatGPT archive explorer with a UMAP conversation atlas, semantic search, and a memorial assistant (unavailable for public, but was a lot of fun to build and use).
  • Co-Writer — Turn-based human-AI collaborative writing with session sharing (login required).

# Three highlights

# Bedtime Tutor

I wanted a calm way to review software engineering concepts before sleep, without opening a textbook or scrolling through docs. Bedtime Tutor is a button-only tutor: pick a topic, get a short streamed answer, optionally hear it read aloud.

The backend is FastAPI with the OpenAI Responses API (streaming, optional built-in web search). Lessons are cached in SQLite so repeat visits are fast. The frontend is Vite and React, deliberately minimal: no typing after launch, just navigation buttons and TTS playback via ElevenLabs. It runs as a hybrid deploy: Vercel frontend, droplet API at tutor.samu.space.

# Flaubert

What started as a “prompt battle” guessing game became something I actually use: a chatbot that speaks in the voice of Gustave Flaubert’s letters. You can try it at flaubert.samu.space. I wrote a longer post about the RAG stack here.

The core idea is simple: ingest thousands of Flaubert letters, embed them into a Chroma vector store, retrieve relevant fragments on each question, and let the LLM answer in his register. Letters are uneven in length, so paragraph-aware chunking worked better than fixed token windows. Dates and recipients turned out to be strong retrieval signals.

# Speak It

Speak It is the text-to-presentation workflow I reach for when I want to hear something instead of reading it: a one-minute brief, a quick explainer, something to rehearse out loud. Type a topic, pick a language (English, Hungarian, or French), choose a tone and voice, and get a short script plus audio. Live at speak-it.samu.space. I wrote a dedicated post here.

The pipeline is FastAPI on the droplet, React on Vercel. OpenAI drafts the script (with optional Serper web search for fresher facts and image search for a visual). ElevenLabs handles TTS. Outputs stay within a listenable length (a few minutes, not a podcast episode). Repeat prompts can hit a fuzzy cache, and recent runs get shareable links via ?id= so you can send someone the same audio and text.

# Closing

These are hobby projects. Some are polished, some are experiments, a few are private tools I built for myself. The directory at apps.samu.space just keeps them discoverable. If something looks interesting, click through and try it.

Written on July 10, 2026

If you notice anything wrong with this post (factual error, rude tone, bad grammar, typo, etc.), and you feel like giving feedback, please do so by contacting me at hello@samu.space. Thank you!