This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine
What I Built
I built Spooky Spirit Board β a browser-based AI horror experience that lets users summon a virtual ghost and ask it questions.
The idea was to bring the classic spirit-board experience into the browser using AI, eerie background sounds, and creepy voice effects.
Press Summon, ask a question, and see what the spirit has to say. π
The goal was to create something more atmospheric than a regular chatbot β a small AI experiment that feels like a supernatural encounter.
Demo
π Live Demo: https://www.machinehaunted.tech/
π₯ YouTube Walkthrough: https://youtu.be/4dIK9k4LRrc
Code
This is a Next.js project bootstrapped with create-next-app.
Getting Started
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.
Learn More
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
Deploy on Vercel
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for moreβ¦
How I Built It
I built this project using a lightweight, browser-based AI approach:
Framework: Next.js, React, TypeScript, and Tailwind CSS.
AI Framework: Transformers.js.
AI Model: Xenova/LaMini-Neo-125M.
Inference: Web Workers keep model processing separate from the main UI thread.
Audio: Web Audio API for the creepy atmosphere and sound effects.
Deployment: Vercel with a custom .tech domain.
Why Does Open Innovation Matter?
Open-source AI gave me the freedom to experiment with models and customize how the ghost behaves without depending on a hosted, closed-model chat API for every response.
Running inference in the browser also made this project a fun experiment in client-side AI.
I could change the model, tune the generation settings, and build my own response-handling logic. The trade-off was clear: smaller models are faster for this experiment, but they don't always generate reliable answers.
Open innovation gave me the flexibility to experiment, learn from failures, and build something creative with the tools available.
The Spirit of It
A normal chatbot answers questions. I wanted this one to make you hesitate before asking the next question.
Combining AI, sound effects, and a dark atmosphere turned a small web development experiment into something much more fun to build.
The machine isn't haunted. At least, that's what I keep telling myself.
Give it a try β if you dare!
Prize Categories
I'm entering the Best Use of a .tech Domain category, provided my domain meets the challenge's eligibility requirements.
Top comments (0)