You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**FastFileIndex** is built for raw speed. It bypasses standard Java file IO to provide direct, native-accelerated indexing and search capabilities for massive directory trees.
14
13
15
-
-[Description](#description)
14
+
## Table of Contents
15
+
-[Features](#features)
16
16
-[Quick Start](#quick-start)
17
-
-[Key Features](#key-features)
18
-
-[Performance](#performance)
19
17
-[Installation](#installation)
20
-
-[Building from Source](#building-from-source)
21
-
-[Platform Support](#platform-support)
18
+
-[Build from Source](#build-from-source)
22
19
-[License](#license)
23
-
-[Related Projects](#related-projects)
24
-
25
-
## Description
26
-
27
-
FastFileIndex is the first module in the FastJava file search engine trilogy:
28
-
29
-
-**FastFileIndex** - Full filesystem scan ? produces a binary, mmap-capable index of all files
30
-
-**FastFileSearch** - Builds Prefix Trie, N-Gram index, Exact Match map, and Ranking engine on top of the index
31
-
-**FastFileWatch** - Uses USN Journal to keep the index + search structures live-updated with zero rescans
32
-
33
-
This architecture is similar to Everything, Spotlight, VSCode, and fsearch but modular and embeddable.
FastFileIndex is **8.33x faster** than Java's `Files.walk()` for filesystem scanning. The benchmark can be run from the `examples/Benchmark` directory.
87
-
88
-
## Binary Format
89
-
90
-
The index consists of two files:
91
-
92
-
-**files.idx** - FileEntryHeader records with id, parentId, size, modified, type, pathOffset, pathLen
93
-
-**paths.bin** - Path-Blob containing all paths in a single contiguous blob
21
+
## Features
22
+
-**⚡ Instant Indexing**: Scan millions of files in milliseconds using native C++ pipelines.
23
+
-**🔎 Zero-Latency Search**: Real-time results for massive file systems.
24
+
-**📦 Low Memory Footprint**: Optimized native data structures for indexing.
25
+
-**🚀 Raw Performance**: Built for automation, agents, and high-speed system tools.
94
26
95
27
## Installation
96
28
97
-
### Maven (JitPack)
29
+
### Option 1: Maven (Recommended)
30
+
Add the JitPack repository and the dependencies to your `pom.xml`:
98
31
99
32
```xml
100
33
<repositories>
@@ -104,49 +37,48 @@ The index consists of two files:
104
37
</repository>
105
38
</repositories>
106
39
107
-
<dependency>
108
-
<groupId>com.github.andrestubbe</groupId>
109
-
<artifactId>fastfileindex</artifactId>
110
-
<version>v1.0.0</version>
111
-
</dependency>
112
-
<dependency>
113
-
<groupId>com.github.andrestubbe</groupId>
114
-
<artifactId>fastcore</artifactId>
115
-
<version>v1.0.0</version>
116
-
</dependency>
40
+
<dependencies>
41
+
<!-- FastFileIndex Library -->
42
+
<dependency>
43
+
<groupId>io.github.andrestubbe</groupId>
44
+
<artifactId>fastfileindex</artifactId>
45
+
<version>0.1.0</version>
46
+
</dependency>
47
+
48
+
<!-- FastCore (Required Native Loader) -->
49
+
<dependency>
50
+
<groupId>com.github.andrestubbe</groupId>
51
+
<artifactId>fastcore</artifactId>
52
+
<version>v0.1.0</version>
53
+
</dependency>
54
+
</dependencies>
117
55
```
118
56
119
-
> **Note:** FastCore handles native library loading from the JAR automatically. Both dependencies are required.
0 commit comments