<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Vibe-Coding on Guillaume Laforge</title><link>https://glaforge.dev/tags/vibe-coding/</link><description>Recent content in Vibe-Coding on Guillaume Laforge</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><copyright>This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.</copyright><lastBuildDate>Sun, 14 Jun 2026 12:39:28 +0200</lastBuildDate><atom:link href="https://glaforge.dev/tags/vibe-coding/index.xml" rel="self" type="application/rss+xml"/><item><title>How I Vibecoded a Philosophy Prep App with Google AI Studio and Gemini</title><link>https://glaforge.dev/posts/2026/06/14/how-i-vibecoded-a-philosophy-prep-app-with-ai-studio-and-gemini/</link><pubDate>Sun, 14 Jun 2026 12:39:28 +0200</pubDate><guid>https://glaforge.dev/posts/2026/06/14/how-i-vibecoded-a-philosophy-prep-app-with-ai-studio-and-gemini/</guid><description>&lt;p&gt;My daughter’s French &lt;em&gt;Bac de Philosophie&lt;/em&gt; (philosophy baccalaureate) is tomorrow.
Preparing for this examination usually involves reviewing handwritten flashcards, printed handouts, and paper notes.&lt;/p&gt;
&lt;p&gt;Reviewing these concepts, authors, works, and quotes systematically is a pain.
My daughter asked me for a digital tool to help her study, as she knew I had already helped her younger sister with similar tools for learning or revising her lessons.&lt;/p&gt;
&lt;p&gt;I built an &lt;a href="https://philosophia-300654570476.europe-west2.run.app"&gt;interactive study application&lt;/a&gt;. What started as a single-evening project became a web application,
written in a mere couple hours of vibe coding in &lt;a href="https://aistudio.google.com/"&gt;Google AI Studio&lt;/a&gt; and &lt;a href="https://gemini.google.com/"&gt;Gemini&lt;/a&gt;.&lt;/p&gt;</description><content:encoded>
<![CDATA[<p>My daughter’s French <em>Bac de Philosophie</em> (philosophy baccalaureate) is tomorrow.
Preparing for this examination usually involves reviewing handwritten flashcards, printed handouts, and paper notes.</p>
<p>Reviewing these concepts, authors, works, and quotes systematically is a pain.
My daughter asked me for a digital tool to help her study, as she knew I had already helped her younger sister with similar tools for learning or revising her lessons.</p>
<p>I built an <a href="https://philosophia-300654570476.europe-west2.run.app">interactive study application</a>. What started as a single-evening project became a web application,
written in a mere couple hours of vibe coding in <a href="https://aistudio.google.com/">Google AI Studio</a> and <a href="https://gemini.google.com/">Gemini</a>.</p>
<p>Here is how we built it.</p>
<h2 id="using-geminis-multimodality-on-handwritten-notes">Using Gemini’s Multimodality on Handwritten Notes</h2>
<p>Data entry is a key task in building an educational app.
Neither did I want to manually type out handwritten review sheets and printed handouts, nor did I want to fetch random data from the internet.</p>
<p>I uploaded photos of the <strong>handwritten notes</strong> directly to Gemini, within AI Studio.
The model performed optical character recognition (OCR) on the handwriting, extracted the quotes, and formatted them into a structured layout.</p>
<h2 id="fact-checking-and-verification">Fact-Checking and Verification</h2>
<p>For the Bac, accuracy is important: mixing up a work&rsquo;s title or misattributing a quote costs points.</p>
<p>I <strong>used Gemini to verify the extracted data</strong>, as the first pass yielded some hallucinations
(mis-attributions, or slightly modified quotes, as the handwriting was sometimes difficult to read, and some info was missing in the notes).</p>
<p>We <strong>cross-referenced</strong> authors, works, philosophical movements, and themes.
Gemini corrected several historical mismatches, such as:</p>
<ul>
<li>Re-attributing Jean-Paul Sartre&rsquo;s &ldquo;L&rsquo;existence précède l&rsquo;essence&rdquo; to the lecture &ldquo;L&rsquo;existentialisme est un humanisme&rdquo; instead of &ldquo;L&rsquo;Être et le Néant&rdquo;.</li>
<li>Identifying the source of Immanuel Kant&rsquo;s categorical imperative as &ldquo;Fondation de la métaphysique des mœurs&rdquo; rather than his later critiques.</li>
<li>Correcting translation details for Schopenhauer&rsquo;s description of the Will.</li>
</ul>
<p>This process resulted in a structured dataset (Author, Citation, Source, Explanation) for the application.</p>
<h2 id="three-learning-modes">Three Learning Modes</h2>
<p>To support active recall, we implemented three modes:</p>
<p><strong>The Match Quiz:</strong> An interactive quiz where the student pairs a quote with its author, movement, or theme, and receives immediate feedback.</p>
<p><figure>
  <img src="https://glaforge.dev/img/philosophia-app/match-quiz.png"
      alt="The Match Quiz mode: associating a Sartre quote with its author, movement, and reference work."
       />
  <figcaption>The Match Quiz mode: associating a Sartre quote with its author, movement, and reference work.</figcaption>
</figure>

</p>
<p><strong>Flashcards:</strong> Double-sided cards that flip to reveal the answer. The app tracks cards marked as &ldquo;Known&rdquo; or &ldquo;To Review,&rdquo; and includes an automated slideshow option.</p>
<p><figure>
  <img src="https://glaforge.dev/img/philosophia-app/flashcard-active-recall.png"
      alt="Flashcard slideshow: a quote is shown, and the user recalls the author and context before revealing the answer."
       />
  <figcaption>Flashcard slideshow: a quote is shown, and the user recalls the author and context before revealing the answer.</figcaption>
</figure>

</p>
<p><strong>The Syllabus Library:</strong> A searchable list (of which a card is shown below) categorized by the official Baccalaureate themes (La Liberté, Le Travail, L&rsquo;État, La Vérité, L&rsquo;Art, La Conscience, Le Temps). Users can filter by keyword and read explanations.</p>
<p><figure>
  <img src="https://glaforge.dev/img/philosophia-app/flashcard-revealed.png"
      alt="A revealed flashcard showing the author (Mary Shelley), movement, work, context, and explanation."
       />
  <figcaption>A revealed flashcard showing the author (Mary Shelley), movement, work, context, and explanation.</figcaption>
</figure>

</p>
<h2 id="vibe-coding-in-google-ai-studio">Vibe Coding in Google AI Studio</h2>
<p>I built this application using <strong>vibe coding</strong>, without writing frontend components or state managers from scratch.</p>
<p>Instead, I described the desired goal, layout and behavior to the AI assistant in <a href="https://aistudio.google.com/">Google AI Studio</a>.
And actually, it&rsquo;s the AI assistant that came up with those three appraoches: quiz, flashcards, and syllabus library.</p>
<p>My initial prompt was simply (translated from French):</p>
<blockquote>
<p>I want to create an application to help with revising for the Baccalaureate in Philosophy.
The attached photos are review sheets that evoke the key concepts, quotes, works, philosophical movements, and main authors of the program.
The main information is mostly in the highlighted handwritten text, but other information is also interesting in the rest of the notes.</p>
<p>The application should be fun and should allow you to associate 1) an author, 2) a quote and 3) a philosophical movement, the title of the work, through interactive quizzes.</p>
</blockquote>
<p>We iterated in plain language. For example, when we noticed that closing the browser reset the settings, I asked: &ldquo;Can we save her preferences automatically?&rdquo;
The assistant generated local storage code to save the active tab, quiz settings, and flashcard progress. The system then updated the application preview.</p>
<h2 id="creating-custom-study-tools">Creating Custom Study Tools</h2>
<p>Using AI, via <strong>vibe-coding</strong>, we converted paper notes into a structured application.
This demonstrates how custom tools can be built to suit a student&rsquo;s study habits thanks to those new agentic development tools.
<a href="https://aistudio.google.com/">Google AI Studio   </a> is a great place to start your next project idea!</p>
<p>Go check it out:</p>
<p>👉 <a href="https://philosophia-300654570476.europe-west2.run.app">https://philosophia-300654570476.europe-west2.run.app</a></p>
<img src="https://pixstat-adh43sr7ba-ew.a.run.app/transparent.gif" width="1" height="1" />]]></content:encoded></item></channel></rss>