Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions content/blog/post/2025-07-07-sea.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
type: post
title: Introducing Search Engine Adapter
author: Andrew Wray
subtitle: One URL for Google, ChatGPT, and Wikipedia
summary: SEA routes search queries to different services with nginx.
date: 2025-07-07
tags: ["sea", "nginx", "search"]
---

Our [previous post](/blog/post/2025-06-01-chatgpt-default-search-engine/)
explained how to make ChatGPT your search engine.


[Search Engine Adapter (SEA)](https://github.com/dense-analysis/sea)
builds on that idea.

SEA is a lightweight nginx proxy that chooses between Google, the ChatGPT API,
or Wikipedia based on keywords in your query.
It compiles nginx config files from a simple TOML source using Go, resulting in
a small and secure deployment.

## Key Features

* Dynamic keyword routing with nginx's `map` directive.
* One HTTPS endpoint easily secured with Let's Encrypt.
* Minimal dependencies and small attack surface.

You can configure SEA using `config-example.toml`, then compile the final
`nginx.conf`. Once deployed, every search is forwarded to the matching service.

A live instance is available at
[https://search.denseanalysis.org/?q=%s](https://search.denseanalysis.org/?q=who+is+w0rp+and+what+is+ALE)
for anyone who wants to try it. The instance does not log any access or error
logs, so Dense Analysis pledges not to spy on your searches, but don't trust us.
The configuration and program to make it are available on
[GitHub](https://github.com/dense-analysis/sea), and you may deploy your own
instance locally, remotely, or wherever you want. We welcome feedback and
contributions!