DEV Community

Arti Singh
Arti Singh

Posted on

Haunted History: Git Logs Brought to Life

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine

What I Built

I built Haunted history, an offline-first, privacy-focused tool that uses local open-weight AI models to [insert core function, e.g., automatically organize and summarize unstructured receipts and invoices]. It runs entirely on your local machine without sending data to cloud servers.

Demo

Animated GIF / Video Clip: A quick 10–15 second screen recording showing the main flow (e.g., uploading a document/image \rightarrow local AI processing \rightarrow structured output).
​Annotated Screenshots: Static images highlighting key UI elements or terminal outputs.

Code

The Code / Implementation

The core logic of [Project Name] focuses on seamless local inference without hitting external APIs. Here is a look at how the application interacts with the open-weight model:

Connecting to the Local AI Model


python
import ollama

def process_local_inference(prompt_text, image_path=None):
    """
    Sends data to the local open-weight model via Ollama 
    for offline processing and analysis.
    """
    response = ollama.chat(
        model='llama3.2-vision',  # or your chosen model
        messages=[
            {
                'role': 'user',
                'content': prompt_text,
                'images': [image_path] if image_path else []
            }
        ]
    )
    return response['message']['content']

## How I Built It
<!-- Which open-source AI did you use (open-weight models, agent harnesses, frameworks, local inference), and how is your project built around it? -->
1. The Tech Stack
​Briefly list the core technologies, frameworks, and libraries you used:
​Frontend / UI: Streamlit / React / Terminal CLI
​AI Engine / Runner: Ollama / Hugging Face / Llama.cpp
​Language: Python / JavaScript / TypeScript
​2. Architecture & Design Decisions
​Explain why you built it this way (e.g., focusing on privacy, zero-cost, offline-first design):
​Why you chose open-weight models instead of cloud APIs.
​How data flows from the user interface to the local inference engine.
​3. Challenges & Solutions (The Fun Part)
​Judges love reading about what went wrong and how you fixed it! Mention 1 or 2 minor technical challenges (e.g., handling local image compression, parsing raw model outputs into structured JSON, or managing prompt engineering).

## Why Does Open Innovation Matter?
<!-- Why does open innovation matter for what you built?  What did it make possible that a closed API wouldn't? -->
Open innovation matters because the pace of technological change and problem-solving today is simply too fast for any single organization—no matter how large, wealthy, or talented—to innovate entirely in isolation.
​Originally coined by Henry Chesbrough, open innovation is the practice of combining internal and external ideas, technologies, and pathways to market

## My Agent Session
<!-- Optional, but judges love it.  Save your session with DevRelay and embed it with the agent_session tag (see the challenge page), or link to it. -->
Agent / Tool Used: State which AI coding assistant or agent framework you used to help write, debug, or architect your project (e.g., Claude Code, Backboard R-CLI, GitHub Copilot, Cursor, Roo Code, or custom scripts).
​Session Transcript / Export: Provide a link (e.g., to an Entire session log, GitHub Gist, or repo file) or embed a collapsible block showing the prompts and responses that generated your core code.
​Key Prompt / Aha! Moment: Highlight 1–2 specific prompts where the agent solved a tricky bug, refactored a function, or created a key feature.

## The Spirit of It
<!-- Optional, but this is where you can make your post stand out.  Did it give someone chills, bring back a memory, or keep a story alive?  Show us the moment it landed.  If not, remove this section. -->

## Prize Categories
<!-- Which partner categories are you entering?  List every one that applies, or remove this section. -->

<!-- Team Submissions: Please pick one member to publish the submission and credit teammates by listing their DEV usernames directly in the body of the post. -->

<!-- Thanks for participating! -->
Enter fullscreen mode Exit fullscreen mode

Top comments (0)