What I Built
AFTERLIGHT: Stories Beyond the Veil is a haunted storytelling website where [short description: ghost stories / AI-narrated tales / interactive hauntings] meet an immersive web experience. Before you read a single word, the site pulls you in: you see a first-person view of walking toward a weathered stone arch, and you pass through the gate into the world of the stories.
For the “Ghost in the Machine” theme, I took it literally. The machine is the website itself, and the ghosts live inside it. [One line on how AI acts as the ghost: for example, it narrates, generates, or haunts the reader.] I wanted people to feel like they were entering a haunted house, not just opening a web page.
Demo
Live app: https://dev-4-challenge-pa3j.vercel.app/
Code
[GitHub repo link, https://github.com/Sambhav-17/DEV-4-Challenge ]
How I Built It
Frontend: React + Vite
3D entrance: Three.js renders the haunted-gate animation on load, with a first-person camera moving through the stone arch
Prototyping: [Google AI Studio, and what you used it for]
AI layer: [Model name, what it generates, and how it connects to the site]
Hosting:
[Add 2–3 sentences on a hard part you solved, such as the camera path, fog and lighting, load-time performance, or getting the AI output to fit the story.]
Why Does Open Innovation Matter?
[Fill this in once I know which open tools you used. Points you can use if they apply: open libraries like Three.js and React made the immersive part possible without a studio budget. Open-weight models can run locally, so stories aren’t tied to one company’s API or pricing. Anyone can fork, remix, and add their own ghosts.]
The Spirit of It
Horror works best when it’s atmosphere rather than shock. The moment I saw the gate fade into fog and the first story appear, it felt like the site had a presence of its own. [Add a real moment, such as a friend’s reaction, a memory the project brought back, or a story you wanted to keep alive. Delete this section if you have nothing true to put here.]
To finish it, I need:
Which AI model or tool powers the project, and what it does for readers
Your deployed link and GitHub repo
Which prize categories you’re entering
Which AI Models & Tools Power AFTERLIGHT
AFTERLIGHT is built around an open-weight, sovereign AI architecture designed for private, local execution:
Primary Default Model — Qwen 2.5 (7B Instruct):
License: Apache 2.0 (OSI-compliant, true open source).
Role: Selected as the premier storytelling model for its emotional resonance, multilingual literary sensitivity, and atmospheric dialogue.
Open-Weight Model Family (User-Selectable in the AI Lab):
Mistral 7B Instruct v0.3 (Apache 2.0) — High-coherence narrative pacing and sliding-window attention.
DeepSeek R1 Distill 8B (MIT License) — Intricate narrative arcs, plot depth, and philosophical reflection.
Llama 3.2 3B (Open Weights) — Compact edge inference for low-spec laptops.
Phi-3.5 Mini 3.8B (MIT License) — Lightweight high-context reasoning.
Inference Runtime Tools:
Ollama (localhost:11434) / OpenAI-Compatible Runtimes: Runs models directly on the user's hardware so personal memories and stories are processed locally without cloud data surrender.
Google Gemini 3.8 Flash (@google/genai): Server-side fallback for cloud previews, web
demonstrations, or machines without dedicated GPU VRAM.
Veil Archive Sanctuary (Autonomous Fallback): Built-in procedural story generator ensuring seamless reading even if all inference backends are offline.
What It Does for Readers
For readers and visitors, AFTERLIGHT transforms traditional reading into an interactive, multi-sensory remembrance experience:
Summons Cinematic Literary Ghost Stories:
Rather than generic AI chatbot replies, readers can select narrative parameters (mood, setting like an abandoned observatory or fog-drenched lighthouse, pacing, and ending tone) and pair them with real inspirations (an antique key, an old melody, or a family heirloom).
The AI crafts literary tales inspired by Shirley Jackson, Edgar Allan Poe, and Guillermo del Toro—where supernatural presences represent love, memory, and unresolved promises rather than cheap horror.
Readers can export stories as Markdown, copy them, or preserve them in the archive.
The 3D Veil Garden:
A real-time Three.js WebGL sanctuary where readers explore an ancient megalithic gate, floating spectral orbs, and light memorial beeswax candles with custom dedication messages that persist in 3D space.
The Ofrenda of Remembrance:
Inspired by DĂa de los Muertos, readers can create memorial tiers honoring loved ones with vintage photographs, favorite songs, traditional foods, voice memos, and a Constellation Mode that maps memories into interconnected star nodes.
The Ghost Terminal:
Readers can interact with the archive through an amber-green CRT terminal using safe commands (summon, whisper , memories, status) to receive ethereal responses directly from the model.
Local-First Privacy ("Zero Remote Surrender"):
All written memories, letters, and voice memos are stored in the reader's browser sandboxed IndexedDB vault. Readers can back up or export their entire memory archive to standard JSON at any time.
https://github.com/Sambhav-17/DEV-4-Challenge
That’s a strong open-source story. Here is the full post, ready to paste into dev.to. Only the demo link, agent session, and prize categories are left for you to fill in.
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine
What I Built
AFTERLIGHT: Stories Beyond the Veil is a local-first haunted sanctuary where open-weight AI writes ghost stories about love, memory, and unfinished promises instead of cheap scares.
I took “Ghost in the Machine” literally. The ghost is a language model running on your own hardware, and the machine is a 3D world built to hold your memories. Readers can:
Summon cinematic ghost stories. Pick a mood, a setting (an abandoned observatory, a fog-drenched lighthouse), the pacing, and the tone of the ending. Then add a real inspiration, such as an antique key, an old melody, or a family heirloom. The model writes in the spirit of Shirley Jackson, Edgar Allan Poe, and Guillermo del Toro. Stories can be exported as Markdown, copied, or kept in the archive.
Explore the 3D Veil Garden. This is a real-time Three.js sanctuary with an ancient megalithic gate and floating spectral orbs. You can light memorial beeswax candles with your own dedication messages, and they persist in 3D space.
Build an Ofrenda of Remembrance. Inspired by DĂa de los Muertos, readers create memorial tiers for loved ones with photographs, songs, foods, and voice memos. A Constellation Mode maps those memories into connected star nodes.
Talk to the Ghost Terminal. It is an amber-green CRT interface with safe commands (summon, whisper , memories, status) that returns ethereal replies straight from the model.
The idea behind it: grief and memory are some of the most private things a person has, so the AI that touches them shouldn’t send them to someone else’s server.
Sambhav-17
/
DEV-4-Challenge
DEV4
AFTERLIGHT — Stories Beyond The Veil
“Some things deserve to live forever.”
Hacktoberfest 2026 Open-Source AI Challenge Week 4: “Ghost in the Machine”
AFTERLIGHT is an immersive 3D digital remembrance experience where human memories become light, stories awaken, and open-weight AI preserves heritage without requiring users to surrender their most private moments to remote cloud monopolies.
✦ System Architecture
USER INTERFACE (React + Three.js + Web Audio)
│
â–Ľ
LOCAL-FIRST VAULT (Client-Side IndexedDB)
│
â–Ľ
MODEL ADAPTER (/api/ai/generate & /api/status)
│
â–Ľ
LOCAL INFERENCE ENGINE (Ollama / vLLM / LM Studio)
│
â–Ľ
OPEN-WEIGHT LANGUAGE MODEL (Qwen 2.5 7B / Mistral 7B)
✦ Core Features
-
The Veil Gate (3D Memorial Garden)
- Real-time Three.js WebGL environment featuring the ancient megalithic Veil Gate.
- Floating translucent spectral orb responsive to cursor proximity.
- Instanced procedural drifting particles and golden marigold pollen.
- Flickering beeswax candles and reflective slate stone floor.
- Procedural Web Audio API soundscape…
How I Built It
Stack: React + Vite for the app, Three.js (WebGL) for the Veil Garden and the haunted-gate entrance, and IndexedDB for the memory vault.
Open-weight models. The default storyteller is Qwen 2.5 (7B Instruct) under Apache 2.0, chosen for its emotional resonance and atmospheric dialogue. Readers can switch models in the in-app AI Lab:
Model License Why it’s there
Qwen 2.5 7B Instruct (default) Apache 2.0 Literary sensitivity, multilingual, atmospheric
Mistral 7B Instruct v0.3 Apache 2.0 Coherent pacing, sliding-window attention
DeepSeek R1 Distill 8B MIT Intricate plots and philosophical depth
Llama 3.2 3B Open weights Compact inference for low-spec laptops
Phi-3.5 Mini 3.8B MIT Lightweight, high-context reasoning
Inference runtime. Models run through Ollama (localhost:11434) or any OpenAI-compatible runtime, so stories are generated on the reader’s own machine.
A three-layer fallback, so the experience never breaks:
Local models via Ollama are the primary path.
Gemini Flash (@google/genai) is a server-side fallback used only for cloud previews and demos, or for machines without enough GPU VRAM.
Veil Archive Sanctuary is a built-in procedural story generator that keeps the site readable even when every inference backend is offline.
Local-first privacy (“Zero Remote Surrender”). Memories, letters, and voice memos live in the browser’s sandboxed IndexedDB vault. Readers can export the whole archive to standard JSON whenever they like.
Why Does Open Innovation Matter?
A memorial site is about the most sensitive thing you can ask an AI to touch. People write letters to the dead, upload photos of loved ones, and record voice memos. With a closed API, all of that would have to travel to a third party’s servers.
Open-weight models changed what I could build:
Privacy by architecture. Because Qwen, Mistral, and the others run locally through Ollama, nothing a reader writes has to leave their device.
Choice. The AI Lab lets readers pick the model that suits their taste or their hardware, from a 3B model on a modest laptop to an 8B reasoning model. A closed API would have chosen for them.
Resilience. The site still works offline and doesn’t depend on a vendor’s pricing, rate limits, or deprecations. A story archive should outlast a company’s roadmap.
Remixability. Anyone can fork the repo, swap in a model, or add new ghosts.
The cloud fallback exists only so people without a GPU can still step through the gate. It is the exception and not the architecture.
My Agent Session
[
T
Top comments (0)