Project_Detail
All_Projects

prep

Local Project Directory Search

View on GitHub
README.md

prep

prep is a Go command-line tool for indexing local projects and finding them quickly by project name or by filenames inside the project.

prep demo

It is aimed at project discovery, not full-text search. Each indexed project stores:

  • project name
  • full path
  • source root
  • inferred language
  • last modified timestamp
  • README preview
  • recursive filenames

What it indexes

By default, prep treats every immediate child directory of these roots as a project:

  • ~/Compiled
  • ~/PycharmProjects

Inside each project, it recursively indexes filenames while skipping noisy directories such as:

  • .git
  • node_modules
  • .venv
  • venv
  • dist
  • build
  • target
  • __pycache__

Storage

prep follows XDG-style paths:

  • config: ~/.config/prep/config.toml
  • index: ~/.local/state/prep/index.sqlite

On first run, it creates the config file automatically with sensible defaults.

Commands

prep index
prep search <query>
prep show <project>

prep index

Scans configured roots, rebuilds the SQLite index, captures README previews, and records the latest modification time found in each project.

prep search <query>

Searches for projects using:

  1. project name matches first
  2. filename matches second

Results are shown as a compact list with project name, language, last modified timestamp, and path.

prep show <project>

Shows project details and the first five lines of the README preview. If multiple projects match, use the full path.

Build

go build -o prep .

Example

./prep index
./prep search docker
./prep show /home/rose/Compiled/prep

Notes

  • prep uses SQLite through a pure Go driver.
  • Unreadable files or directories are skipped with warnings instead of aborting the whole index run.

License

MIT