{"id":51162149,"url":"https://github.com/anyin-ai/aperture","last_synced_at":"2026-07-14T23:00:43.638Z","repository":{"id":343121114,"uuid":"1176359728","full_name":"anyin-ai/aperture","owner":"anyin-ai","description":"Open-source AI visibility monitoring and analytics. Track how your brand appears across ChatGPT, Perplexity, Google AI Overviews, and other LLMs. BYOK. Self-hosted. Free alternative to Profound and Peec AI.","archived":false,"fork":false,"pushed_at":"2026-07-01T20:13:55.000Z","size":165,"stargazers_count":17,"open_issues_count":3,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-07-01T22:15:57.998Z","etag":null,"topics":["aeo","ai-engine-optimization","ai-search","ai-search-optimization","ai-visibility","analytics","answer-engine-optimization","brand-monitoring","byok","competitor-analysis","generative-ai","generative-engine-optimization","geo","llm","llm-monitoring","marketing","observability","self-hosted","seo","seo-audit"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/anyin-ai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-03-09T00:05:44.000Z","updated_at":"2026-07-01T20:13:57.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/anyin-ai/aperture","commit_stats":null,"previous_names":["anyin-ai/aperture"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/anyin-ai/aperture","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anyin-ai%2Faperture","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anyin-ai%2Faperture/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anyin-ai%2Faperture/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anyin-ai%2Faperture/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anyin-ai","download_url":"https://codeload.github.com/anyin-ai/aperture/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anyin-ai%2Faperture/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35482263,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-14T02:00:06.603Z","response_time":114,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aeo","ai-engine-optimization","ai-search","ai-search-optimization","ai-visibility","analytics","answer-engine-optimization","brand-monitoring","byok","competitor-analysis","generative-ai","generative-engine-optimization","geo","llm","llm-monitoring","marketing","observability","self-hosted","seo","seo-audit"],"created_at":"2026-06-26T15:00:26.467Z","updated_at":"2026-07-14T23:00:43.632Z","avatar_url":"https://github.com/anyin-ai.png","language":"TypeScript","funding_links":[],"categories":["工具"],"sub_categories":["开源工具"],"readme":"# Aperture\n\n**Open-source AI visibility infrastructure.**\n\nTrack how your brand appears (or doesn't) across ChatGPT, Perplexity, Google AI Overviews, and other LLM-powered search engines. Self-hosted. Bring your own keys.\n\nFree alternative to [Profound](https://tryprofound.com) and [Peec AI](https://peec.ai).\n\n---\n\n## Why Aperture?\n\nAI search engines are replacing traditional search for product recommendations, brand discovery, and purchase decisions. If an LLM doesn't mention your brand, you're invisible to a growing share of your customers.\n\nAperture lets you:\n\n- **Monitor** — Track whether AI models recommend your brand for the queries that matter\n- **Compare** — See which competitors get cited instead of you\n- **Audit** — Run structured visibility audits across models, languages, and markets\n- **Track** — Measure changes over time as you optimize your content\n\nNo vendor lock-in. No per-seat pricing. Your infrastructure, your data, your keys.\n\n---\n\n## Tracked AI Search Engines\n\n| Engine | Status |\n|--------|--------|\n| ChatGPT (OpenAI) | 🟢 Supported |\n| Perplexity | 🟢 Supported |\n| Google AI Overviews | 🟡 Planned |\n| Claude (Anthropic) | 🟡 Planned |\n\n## Supported LLM Providers (BYOK)\n\nAperture doesn't ship with API keys. Bring your own:\n\n- **OpenAI** — 🟢 Supported (`gpt-4o-mini`, `gpt-4o`, `gpt-4-turbo`, `gpt-3.5-turbo`)\n- **Perplexity** — 🟢 Supported (`sonar`, `sonar-pro`)\n- **Anthropic** — 🟡 Planned\n- **Google (Gemini)** — 🟡 Planned\n- Any OpenAI-compatible endpoint (Ollama, vLLM, etc.) — set a custom Base URL in Settings\n\nThe supported provider/model list is served by the backend at `GET /api/providers`, so the UI never drifts from what actually works.\n\n---\n\n## Use Cases\n\n- **Brands** — Monitor whether AI recommends you or your competitors\n- **Agencies** — Run client audits at scale without per-seat SaaS costs\n- **SEO/AEO teams** — Track the impact of content optimization on AI visibility\n- **Researchers** — Study LLM recommendation patterns across markets and languages\n\n---\n\n## Comparison\n\nHow Aperture compares to commercial AI visibility tools:\n\n| Feature | Aperture | Peec AI | LLMrefs | Semrush | Profound | Otterly AI |\n|---------|----------|---------|---------|---------|----------|------------|\n| Self-hosted | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |\n| Open source | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |\n| BYOK (bring your own keys) | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |\n| Multi-language queries | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |\n| ChatGPT tracking | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |\n| Perplexity tracking | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |\n| Google AI Overviews | 🟡 Planned | ✅ | ✅ | ✅ | ✅ | ✅ |\n| Competitor benchmarking | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |\n| Citation/source tracking | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |\n| Sentiment analysis | 🟡 Planned | ✅ | ❌ | ✅ | ✅ | ✅ |\n| Your data stays on your server | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |\n| No per-seat pricing | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |\n| API/export | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |\n| Pricing | Free | €89/mo+ | Free tier / paid | $$$+ | Enterprise | Enterprise |\n\n**Why self-host?** Your audit queries, brand strategy, and competitive intelligence never leave your infrastructure. No vendor lock-in, no usage caps, no surprise pricing changes.\n\n\u003e **Security note (MVP):** API keys are stored **unencrypted** in the local SQLite database, and Aperture ships with **no authentication**. Keep your instance on localhost / a private network, or put it behind a reverse proxy with auth — do not expose it to the public internet. See [DOCS.md](DOCS.md#security--self-hosting) for details.\n\n---\n\n## Documentation\n\nSee [DOCS.md](DOCS.md) for quick start guide, architecture, configuration, and roadmap.\n\n---\n\n## Contributing\n\nContributions are welcome. See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.\n\n---\n\n## License\n\n[MIT](LICENSE)\n\n---\n\n## Acknowledgements\n\nAperture is built by [Anyin](https://anyin.ai) (安引), an AEO agency helping brands become visible in AI-powered search.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanyin-ai%2Faperture","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanyin-ai%2Faperture","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanyin-ai%2Faperture/lists"}