DAYBACK: Yesterday Is Not Finished
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine
What I Built
Some moments are too important to live only in memory. The night a country won a World Cup, the hours after a result nobody expected. People remember how those moments felt, but the voices, headlines and videos that surrounded them are scattered across the web.
DAYBACK takes one sentence and turns it into an entire remembered experience. You type a moment, for example "Argentina wins the 2022 FIFA World Cup", and DAYBACK:
- Works out what the event actually was (date, place, people involved).
- Plans a spread of searches across the four phases of any historical moment: the anticipation, the moment, the aftermath and the legacy.
- Gathers real, source-linked artefacts: YouTube films, news coverage and web pages.
- Listens separately to public conversation on Reddit and X and curates a small set of human voices.
- Lays the four most prominent memories on a digital ofrenda, a DÃa de los Muertos altar, where each framed hole in the altar opens a memory.
The ofrenda is not decoration. In DÃa de los Muertos, we keep the dead present by placing what mattered to them where everyone can see it. DAYBACK applies the same ritual to collective memory: the moments that shaped us deserve an altar, a candle and a place to return to.
Two principles run through every design decision:
Never fabricate the past. DAYBACK only shows material it actually retrieved, always links to the original source, and labels everything unverified until a human confirms it. If an API key is missing, it shows the query plan and invents nothing.
Fail softly. Every AI and network dependency has a fallback, so a missing model or a rate-limited API degrades the experience rather than breaking it.
Demo:
DAYBACK turns a single historical moment into an explorable archive of the digital traces it left behind.
1. Start with a moment
Enter a historical event, such as Argentina winning the 2022 FIFA World Cup.
DAYBACK uses an AI-powered research workflow to resolve the event, identify its important phases, and generate targeted searches across relevant platforms.
2. Watch the research unfold
The research workflow breaks the event into platform- and phase-specific queries rather than relying on one generic search.
It retrieves relevant material through SerpApi and the YouTube Data API, collecting source-linked videos, news coverage, and other indexed web content.
Each result retains its original source link and provenance information.
3. Explore the historical archive
Once research is complete, DAYBACK organizes the retrieved material into an event-focused experience.

Explore the event overview, its recovered digital artefacts, and the different perspectives surrounding the moment.
The goal isn't to generate a fictional reconstruction of history. It's to make real, discoverable traces of the past easier to explore.
4. Enter The Voices Archive
DAYBACK also performs a separate social research pass to discover public Reddit discussions and X posts related to the event.

These results are independently curated and displayed in The Voices Archive, bringing together reactions and conversations from people who experienced the moment.
This research runs independently of the main archive, so a social-search failure cannot prevent the core experience from loading.
5. Follow the evidence
Every displayed result links back to its original source.
DAYBACK labels retrieved material as unverified until a human confirms it. It does not present search snippets or AI classifications as verified historical facts.
If an API key is unavailable, DAYBACK displays the research plan instead of fabricating results.
The idea is simple: don't invent the past. Recover what can actually be found, preserve where it came from, and let people explore it.
Code:
sherwinkumar2004
/
dayback
An interactive digital memorial that brings cherished memories back to life.
DAYBACK
Yesterday is not finished.
What if you could relive a moment in history, not just remember what happened, but experience how the world reacted to it?
DAYBACK is an AI-powered historical memory archive that transforms an event into an immersive, interactive experience. Give it a moment in time, and it gathers the news, videos and public reactions surrounding it, bringing them together in a digital DÃa de los Muertos Ofrenda.
Instead of another page of search results, DAYBACK gives history a place to live.
Live demo · DEV Challenge post · GitHub repository
The Experience
- The Memory Altar: An interactive, pixel-art Ofrenda featuring four carefully selected memories. Each frame opens a different fragment of the event.
- Four Chapters: Explore the anticipation, the moment, the aftermath and the legacy of an event.
- The Archive: Discover news coverage, web articles and YouTube videos, organised into an interactive collection.
- The Newspaper: News…
How I Built It
1. The open-source AI
The language model runs locally through Ollama. The model is configured through an environment variable, making it possible to experiment with alternative models without rewriting the workflow.
It powers two important capabilities:
Event resolution: Turns a one-line input into a JSON brief (title, dates, location, aliases, confidence). It is told to use null rather than guess, and every model-supplied date is flagged for human review.
Social curation: Reads up to 60 public Reddit and X candidates and keeps at most 20 that add a distinct perspective, with a one-line reason for each.
2. Agent orchestration
Mastra orchestrates the main dayback-research-workflow. The Voices Archive operates through a separate research pipeline, so social discovery doesn't block the main archive.
The workflow has three primary steps:
- resolve-event – Understands and structures the historical event.
- plan-research – Generates up to 14 independent, platform- and chapter-specific search queries.
- collect-sources – Retrieves, normalizes, and deduplicates the resulting artefacts.
3. Research integrations
- SerpApi for web, news, Reddit, X, and YouTube discovery.
- YouTube Data API v3 for video discovery.
- SerpApi's YouTube engine as a fallback.
4. Making a 4B model dependable
Small local models misbehave, so the guardrails are the interesting part:
- Strip Qwen3's
<think>block and code fences, extract the outer JSON, default every missing field, then validate with Zod. - If Ollama is down, a rule-based fallback builds an honest brief that says resolution was unavailable.
- The curator treats every post as untrusted data and may only return IDs from the candidate list; categories and chapters are checked against fixed lists. A local relevance ranker takes over if the model is unreachable.
- The Voices Archive is a separate request, so a failure there never touches the main archive.
-
verificationStatusis the literal typeunverified, so no code path can claim a source is verified.
Why Does Open Innovation Matter?
A memorial cannot be built on a model you cannot inspect, and it must never rewrite the past. Open weights let me use a model for the one job it should have here, deciding what to look for and what to keep, while the remembering stays with real, linked sources.
Open worked better than a closed API in five places.
The curator reads strangers' posts, so it should run where I can contain it. It reads up to 60 public posts per search, any of which could carry instructions aimed at the model. Running Qwen3 locally let me wrap it tightly (untrusted-data prompt, ID whitelist, validated outputs) without sending that text to a third-party model.
The model call is free, so the budget goes to the archive. Each search already spends up to 14 planned metered search queries plus 6 for the Voices Archive. A hosted model would have added two more metered calls and a per-token bill on 60 posts.
I could see the reasoning. Qwen3 writes its chain of thought in a
<think>block. Because I run it myself, I log the raw output, strip the block, and fix the parser when a 4B model wanders, instead of guessing at a black box.One variable swaps the model. Both agents read
OLLAMA_MODEL. Trying a larger Qwen3 or a Gemma model is a one-line change with no change to routes, workflows or contracts. A model on disk stays what it was when I tested it; a hosted one can change under me.A small, imperfect model forced a design nothing can break. The defaults, schemas and fallbacks I wrote for Qwen3 mean DAYBACK still works with no model running, and improves when a stronger one is plugged in.
The deeper reason is that the model never writes history. A model asked to recall a moment gives a fluent, plausible, sometimes invented account. Mine only answers narrow questions, and every item shown is a real URL marked unverified. That job does not need a frontier model, so an open 4B model on a laptop is enough.
The Spirit of It
DÃa de los Muertos holds that the dead are not gone while someone still tells their story. Moments work the same way. The day a country won, the night a wall came down, the evening you and a stranger both screamed at the same screen: they fade unless somebody sets a place for them.
That is why DAYBACK ends in an altar and not a results page. Four frames force a choice about what mattered most. The marigolds, the candles and the papel picado are the rest of the archive, the offerings around the centre. And the Voices Archive keeps the part history books skip: ordinary people, in their own words, in the hours when it all happened.
Prize Categories
Best Use of Mastra
- Orchestrates DAYBACK's multi-stage historical research workflow through
dayback-research-workflow. - Resolves a user's moment into a structured event brief and generates up to 14 targeted research queries.
- Coordinates source discovery, retrieval, deduplication, and organization into a unified historical archive.
- Keeps social discovery in a separate pipeline, so Reddit and X conversations can be curated independently without disrupting the main research workflow.
Best Use of SerpApi
- Powers DAYBACK's web discovery engine, finding historical coverage and sources related to a user's moment.
- Uses up to 14 targeted queries instead of relying on a single generic search.
- Helps bring together scattered articles, webpages, and historical references into one research archive.
- Complements the dedicated Reddit and X discovery pipeline, keeping historical reporting and public conversations distinct.
Built in collaboration with harish_gs_145




Top comments (0)