{
  "id": 13451880,
  "title": "Noticed: a quiet photo diary with captions from a local AI",
  "url": "https://urgent.news/2026/10/10/noticed-a-quiet-photo-diary-with-captions-from-a-local-ai",
  "topic": "ai",
  "section": "AI",
  "published": "2026-10-10T15:47:54.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/ray007/noticed-a-quiet-photo-diary-with-captions-from-a-local-ai-c1"
  },
  "original_language": "en",
  "account": "Noticed is a personal photo diary that runs completely on your own computer. Each day, you capture a single photo of something that catches your attention and add it to the app. A local open-source vision model, Gemma 3 through Ollama, generates a concise caption for the image. Over time, the app builds a collection of small moments rather than a continuously scrolling feed.\n\nDemonstrated at the Hacktoberfest Open-Source AI Challenge Week 1, Noticed is a quiet photo diary that operates locally, without any external accounts or costs. The app is built around a simple rule: one photo per day. Photos and captions never leave your computer, and location data (EXIF/GPS) is excluded.\n\nThe app consists of three main components: the model (Gemma 3 4B), the backend (Python and Flask), and the frontend (plain HTML, CSS, and JavaScript). When you add a photo, Pillow straightens it, resizes it to a maximum of 2560 pixels, and saves a new JPG without metadata. The image is also reduced to a single pixel to extract its average color, which contributes to the top strip of colors in the diary.\n\nCaption generation occurs when the cleaned photo is sent to Gemma 3 4B through Ollama, using a brief prompt for a dreamy or witty line that focuses on what is visible in the image. The model's response is trimmed, and if the model is unavailable, the entry is saved with an empty caption instead of causing an error. The diary is stored in a plain JSON file, rendered with Jinja templates, and displayed in a grid format with no backend database or framework. The upload button appears as an empty tile at the start of the grid, which locks while the model processes the image to prevent mid-caption submissions. Each entry displays the date, caption, and accompanying color strip, providing a quick visual summary of your days.",
  "summary": "This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass What I Built Noticed is a quiet photo diary that runs entirely on your own computer. Once a day you step outside, take one photo of whatever catches your eye, and add it to the app. A local open-source vision model (Gemma 3 through Ollama) writes a one-line caption, and over time you build a gallery of small…",
  "key_points": [
    "Noted is a local AI-powered photo diary",
    "Gemma 3 model generates captions locally",
    "Photos and captions never leave user's computer"
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}