DEV Community

Mariama Loum
Mariama Loum

Posted on Edited on

Ghost in the machine

Title: Ghost in the Machine: a haunted web page that talks back

What I Built

A haunted web page where you chat with a ghost trapped inside the machine. You type or speak a question, and the ghost answers in two or three short, eerie sentences, then reads the answer out loud in a deep, ancient voice. I took the theme literally: a ghost living inside the code.

Code

https://github.com/marijaneloum005-create/fantome-

How I Built It

  • Brain: Gemma 4 (Google's open-weight model, 31B instruction-tuned), called through the Google AI Studio API, with a system prompt that defines the ghost's personality.
  • Voice: ElevenLabs text-to-speech, using a voice I created with Voice Design.
  • Backend: a small Node.js and Express server that keeps all API keys on the server (the browser never sees them) and limits requests.
  • Frontend: plain HTML, CSS and JavaScript, with browser speech recognition for voice input.
  • Hosting: Render (free web service), deployed from GitHub. The hardest part was keeping the API keys secret while connecting three services.

Why Does Open Innovation Matter?

Gemma's open weights mean I am not locked into one closed API: I can swap the model, or later run the same ghost fully offline on my own machine. It also let me build and test for free as a bachelor's student.

Prize Categories

  • Best Use of Render
  • Best Use of Gemma
  • Best Use of ElevenLabs

Top comments (0)