GitHub Hot Board

GitHub Hot Board · Archivo del repositorio

duxlabs-dev/dux-search

Indexed filesystem search from Dux Labs (Esta descripción procede del propio repositorio.)

Datos al October 29duxlabs-dev

Mejor puesto

#194

Gemas ignoradas

100

Estrellas totales

17

Forks totales

2

Días en rankings (30 d)

Licencia: MITÚltimo push: October 26Issues abiertos (PR incl.): 1Recolectado desde 2026-10-25; desconocido = aún no recopilado

Documentación del proyecto

dsearch

dsearch

Fast, configurable filesystem search with fuzzy matching

Documentation GitHub stars GitHub release AUR version (git) GitHub License


A configurable filesystem search service powered by bleve for Unix-based operating systems.

Full documentation →


Features

  • Indexing - Indexes all files in specified paths
  • Configuration - Configure exclusions, depth, etc.
  • Fuzzy search - Typo-tolerant search queries
  • Text content extraction - Optionally extracts and indexes content from text-based files
  • EXIF metadata - Extracts and indexes EXIF data from image files for advanced search
  • Virtual folders - Search within specific directories
  • Concurrent indexing - Multi-worker parallel indexing for fast performance
  • Real-time updates - File watcher for incremental index updates

Installation

Requires Go 1.26+

make && sudo make install && make install-service

NixOS

The repository contains a flake that provides a Home Manager module. To use it, you simply need to add it as a flake input in your flake.nix:

{
  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";

    # ...

    dsearch = {
      url = "github:duxlabs-dev/dux-search";
      inputs.nixpkgs.follows = "nixpkgs";
    };
  };
}

and import/enable it in your Home Manager configuration:

{ inputs, ... }:  {
  imports = [ inputs.dsearch.homeModules.default ];

  programs.dsearch = {
    enable = true;

    # Put your config here or omit this for dsearch to generate the default config at runtime
    config = {
      # ...
    };
  };
}

Usage

Best to run as a systemd user unit:

systemctl --user enable --now dsearch.service

Then search with various options:

# Basic search
dsearch search "golang"

# Show all results
dsearch search "*.md" --limit 0

# JSON output for scripting
dsearch search "config" --json
dsearch search "README" --limit 0 --json | jq '.hits[].id'

# Advanced options
dsearch search "function" --field filename --ext .go
dsearch search "typo" --fuzzy
dsearch search "*" --sort mtime --desc
# Scores content higher than filenames
dsearch search --field body mountain

# Virtual folder search
dsearch search "*" --folder /home/user/Pictures

# EXIF metadata search and filtering
dsearch search "*" --ext .jpg --exif-make Canon
dsearch search "*" --exif-model "Canon EOS 5D"
dsearch search "*" --folder /home/user/Photos --exif-make Nikon

# Sort photos by date taken (newest first)
dsearch search "*" --ext .jpg --sort exif_date --desc

# Find photos by ISO range (low-light shots)
dsearch search "*" --exif-min-iso 1600 --exif-max-iso 6400

# Find portrait shots (focal length range)
dsearch search "*" --exif-min-focal-len 50 --exif-max-focal-len 135

# Find wide aperture shots (shallow depth of field)
dsearch search "*" --exif-min-aperture 1.4 --exif-max-aperture 2.8

# Photos taken in date range
dsearch search "*" --exif-date-after "2024-06-01T00:00:00Z" --exif-date-before "2024-08-31T23:59:59Z"

# GPS location filtering (bounding box)
dsearch search "*" --exif-lat-min 40.0 --exif-lat-max 41.0 --exif-lon-min -74.0 --exif-lon-max -73.0

For all options:

dsearch search --help

The REST API is off by default. Start the service with dsearch serve --http or set http_enabled = true in the config, then visit http://localhost:43654/docs for the API documentation. The API has no authentication, so every local account can reach it once enabled.

Configuration

See config.example.toml for configuration options.

On startup, a configuration file will be created at ~/.config/dsearch/config.toml

Clasificaciones actuales

  • 194

    Gemas ignoradas

    100 estrellas · 17 fork · Star acumuladas (ascendente)

    Ignoradas →

Evolución de los últimos 30 días

Estrellas acumuladas

Evolución del puesto

Pon la insignia en tu README · duxlabs-dev/dux-search[![Pon la insignia en tu README](https://git.vaiox.xyz/api/badge/duxlabs-dev/dux-search.svg)](https://git.vaiox.xyz/es/repo/duxlabs-dev/dux-search)

Badge · 任何仓库都可以挂 —— 未上榜的仓库显示灰章,上完榜会自动点亮。

<a href="https://git.vaiox.xyz/es/repo/duxlabs-dev/dux-search"><img src="https://git.vaiox.xyz/api/badge/duxlabs-dev/dux-search.svg" alt="Pon la insignia en tu README" height="20"></a>

← Volver a los rankings

GitHub Hot BoardMáquina del tiempoDescubrir联系我们 · Contact