whatisgithub

What is sql-manything?

iochair/sql-manything — explained in plain English

Analysis updated 2026-05-18

48PythonAudience · developerComplexity · 2/5Setup · easy

In one sentence

A Python tool that turns any folder of code into a searchable local SQLite database, built for fast AI-assisted lookups.

Mindmap

mindmap
  root((SQL-ManyThing))
    What it does
      Indexes code into SQLite
      Full text search via FTS5
      Narrow first extract second
    Tech stack
      Python
      SQLite
      FTS5
    Phases
      Index build
      Symbol enrichment
      Query tracing
    Audience
      Developers
      AI coding agents

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Index a huge codebase, like an Unreal Engine install, into one searchable database file.

USE CASE 2

Let an AI coding agent search for exact text snippets without loading whole files into context.

USE CASE 3

Extract code symbols like functions and classes for deeper navigation.

USE CASE 4

Track which SQL queries were already run so future sessions avoid repeating searches.

What is it built with?

PythonSQLiteFTS5

How does it compare?

iochair/sql-manythingdevelp10/rustinterviewquiestionsfukikomarga/exodus-fake-balance
Stars484848
LanguagePythonPythonPython
Setup difficultyeasymoderatemoderate
Complexity2/52/52/5
Audiencedeveloperdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min

Each phase is a separate script, indexing very large codebases can take a while and produce a multi-gigabyte database.

So what is it?

SQL-ManyThing is a Python tool that takes any folder of code files and converts it into a local SQLite database with a built-in full-text search index. You point it at a project directory, it reads every file, and produces a single database file you can query with plain SQL. No server is required, no internet connection is needed, and the entire result lives in one file on your computer. The core search capability uses a technology called FTS5 trigram indexing, which allows you to find files containing any phrase or snippet in milliseconds, even across tens of thousands of files. The project's own benchmark involved an entire Unreal Engine installation: over 89,000 files indexed into a roughly 3 gigabyte database, searchable in seconds. The same approach works on JavaScript libraries, Python packages, Java projects, monorepos, or any collection of files. The tool is structured in three phases. The first phase builds the index by scanning your project and writing every file's content into the database. The second phase is optional enrichment: you can run additional scripts to extract code symbols (functions, classes, structs) or build a graph of how files relate to each other. The third phase sets up query tracing, which means every SQL query you or an AI agent runs gets recorded, so future sessions can look back at what was already searched and avoid repeating work. The design is deliberately minimal in one specific way: you query by locating the exact position of what you need, then extract only a small slice of the file using SQL's substr() function. This avoids loading whole files into memory or into an AI context window. The README explains the philosophy as "narrow first, extract second" rather than the more common approach of pulling large chunks of text and sorting through them afterward. Each phase is a standalone Python script rather than a single unified command. The README explains this was intentional: keeping command strings stable helps AI agents use the tool reliably, because even small changes to command structure can introduce noise in how a language model reasons about the commands it is generating.

Copy-paste prompts

Prompt 1
Help me run SQL-ManyThing on my project folder and build the initial search index.
Prompt 2
Show me how to search the database for a specific function or text snippet using SQL.
Prompt 3
Explain how the query tracing phase avoids repeating past searches.
Prompt 4
Walk me through extracting code symbols in the optional enrichment phase.

Frequently asked questions

What is sql-manything?

A Python tool that turns any folder of code into a searchable local SQLite database, built for fast AI-assisted lookups.

What language is sql-manything written in?

Mainly Python. The stack also includes Python, SQLite, FTS5.

How hard is sql-manything to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is sql-manything for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.