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