diff·log - diff·log Developer Docs

1 min read Original article ↗

diff·log is an open source app that uses AI to summarize dev news based on your tech stack. These docs are for technical users interested in the underlying technology.

difflog.dev (the site) | GitHub (the code)

Overview

  • Local-first — All data stored in browser localStorage; sync is optional
  • End-to-end encrypted — Sync data is encrypted client-side before upload
  • Multi-profile — Track different tech stacks separately
  • BYOK — Bring your own API keys for AI generation (supports Anthropic, DeepSeek, Gemini, Perplexity, Serper)

Technology Stack

Client: SvelteKit SPA with Svelte 5 runes for reactivity. CSS View Transitions for smooth navigation.

Server: Cloudflare Pages for production hosting, Cloudflare D1 for sync storage. SvelteKit API routes for server endpoints.

Build: Vite via SvelteKit with Cloudflare adapter. Bun as package manager and test runner.

Architecture Overview

graph TB
    subgraph Client ["Client (Browser)"]
        Stores[Svelte 5 Stores]
        Crypto[Web Crypto API]
        Storage[localStorage]
    end

    subgraph Server ["Cloudflare Pages"]
        API["/api/* Server Routes"]
    end

    subgraph DB ["Cloudflare D1"]
        Profiles[(profiles)]
        Diffs[(diffs)]
        Stars[(stars)]
    end

    Stores <--> Crypto
    Stores <--> Storage
    Stores <--> API
    API <--> Profiles
    API <--> Diffs
    API <--> Stars

Getting Started

bun install          # Install dependencies
bun run dev          # Start dev server