Commit Graph
26 Commits
Author SHA1 Message Date
multipleof4andClaude Opus 5.5 6fb64e9d7b Feat: AI images on ai.direct-img.link, and as the fallback when a search finds nothing
ai.direct-img.link serves images from the AuroraIMG-6M API on our Dokploy
server (github.com/direct-img/AuroraIMG-6M) instead of searching. It takes
?src= (auroraimg-6m, case-insensitive, the default and only source for now)
and ?i=, where each i gets its own seed derived from the query, so it's a
different image of the same prompt. It has its own daily limit
(AI_DAILY_LIMIT) and AI: cache keys / ai/ R2 prefix. Failed generations
aren't cached, since they're likely temporary.

On direct-img.link and free.direct-img.link, a search that finds nothing (or
fewer than i working images) now serves an AI image of the query instead of
bad.webp. It's kept for 24h like failures were, so a later search can still
find a real image; bad.webp is only served if the AI image fails too. Its ttl
is stored in KV and R2 metadata so cache hits and deduped waiters send a
matching max-age.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 02:56:39 +00:00
multipleof4andClaude Opus 5.5 1ebcfc777e Perf: Serve homepage and assets without invoking Functions
Add _routes.json so /, /robots.txt and /assets/* skip the worker and
don't count against the Functions request quota. rate-limit.js moves to
assets/ so the homepage reads it client-side instead of via HTMLRewriter.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 16:43:25 -07:00
multipleof4andClaude Opus 5.5 c76b1ba5f7 Feat: Homepage reads daily limits from rate-limit.js
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 16:35:46 -07:00
multipleof4andClaude Opus 5.5 0ab01d6e66 Feat: Give free.direct-img.link its own 100/day search limit
Free searches never spend Brave credits, so they no longer share the
main site's 35/day counter. Main-site rate ids are unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 16:23:56 -07:00
multipleof4andClaude Opus 5.5 8b49ebdf71 Feat: Raise daily search limit to 35
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26 12:42:17 -07:00
multipleof4andClaude Opus 5.5 62d6bcda0b Docs: Use free image in README preview, trim homepage i= note
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26 12:10:46 -07:00
multipleof4andClaude Opus 5.5 029b259f05 Feat: Add free.direct-img.link and ?i= result picker (#1)
- free.direct-img.link serves only unrestricted (public domain/CC0) images
  from Openverse (license=cc0,pdm) and Wikimedia Commons
  (haslicense:unrestricted), with optional ?src=openverse|wikimedia
- ?i=1..20 picks the i-th working image on both sites; broken links are
  skipped so every index is a different image
- Openverse OAuth token is cached in KV and refreshed automatically
- Skip Flickr "photo unavailable" placeholders (served with HTTP 200)
- Free/indexed cache keys use uppercase prefixes; plain main-site keys
  are unchanged so existing cache entries stay valid
- Update README, homepage, privacy policy and terms

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26 12:00:54 -07:00
multipleof4andClaude Opus 5.5 023f4d132c Feat: Add GoatCounter analytics, Terms & Privacy pages, prompt copy button
- Update AI system prompt example (README + index)
- Add copy button for the prompt on the index page
- Add GoatCounter to homepage; report image hits server-side via
  waitUntil (optional GOATCOUNTER_URL/GOATCOUNTER_TOKEN)
- Add TERMS.md and PRIVACY.md, linked in the index footer
- Remove dead c.planetrenox.com tracker

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26 08:51:48 -07:00
multipleof4andClaude Opus 5.5 2976236c00 Feat: Add logo, favicon and bad.webp; move images to /assets
- New logo (svg + jpg) and multi-size favicon.ico
- /favicon.ico still served at root so direct image views get the icon
- Generated missing bad.webp placeholder
- Moved limit.webp into /assets and routed error images via helper

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-25 17:49:18 -07:00
multipleof4andClaude Opus 5.5 f1e894d1bb Fix: Lower daily search limit to 20
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-25 14:10:02 -07:00
multipleof4andClaude Opus 5.5 d81cd26a1e Docs: Add GitHub Sponsors button and fix rate limit/cache info
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-25 14:00:45 -07:00
multipleof4 864605d022 Remove unnecessary whitespace in index.html
Removed unnecessary whitespace in the head section.
2026-03-06 18:53:12 -08:00
multipleof4 c0202fc713 Update index.html 2026-03-06 18:53:04 -08:00
multipleof4 15ac411ed3 Feat: Add analytics tracker script to head 2026-02-27 09:30:47 -08:00
multipleof4 b17057c49d Refactor: Update BTC donation address 2026-02-19 12:23:07 -08:00
multipleof4 8b9d72c83e Refactor: Update index.html with new AI prompt & golf CSS 2026-02-19 08:11:56 -08:00
multipleof4 12265dcfff Feat: Update docs to mention dot encoding 2026-02-17 19:51:56 -08:00
multipleof4 43ff666933 Refactor: Update rate limit to 15 in landing page 2026-02-14 19:02:22 -08:00
multipleof4 17090b28f3 Feat: Increase daily search rate limit from 10 to 25 2026-02-14 08:48:49 -08:00
multipleof4 964249582a Refactor: Replace URL format with AI prompt, remove privacy 2026-02-13 19:07:20 -08:00
multipleof4 39d9692095 Refactor: Update rate limit table for CF Free 2026-02-13 16:56:43 -08:00
multipleof4 5dbab52bad Feat: Add donation-based limit increase notice 2026-02-13 16:16:20 -08:00
multipleof4 f2f380c0b8 Feat: Complete info migration from README to index 2026-02-13 16:12:11 -08:00
multipleof4 ef28db0310 Refactor: Add rate limits and remove infra mentions 2026-02-13 16:07:39 -08:00
multipleof4 984ce17165 Refactor: Remove demo and add donation warning 2026-02-13 16:05:43 -08:00
multipleof4 8db9a006b2 Feat: Add minimalist light-themed landing page 2026-02-13 16:02:26 -08:00