About • Features • Getting Started • Usage • Contributing • License
FastSearch is a desktop utility designed to provide a blazing-fast file content search. Unlike standard file finders that only match filenames, FastSearch digs into the contents of files, making it easy to find code snippets, logs, or documents based on what's inside them. The clean and intuitive UI, built with JavaFX, ensures a smooth user experience.
Note: You should replace the link above with an actual screenshot of your application.
- Multi-threaded Content Search: Leverages multiple CPU cores to scan directories and files in parallel.
- Responsive UI: A non-blocking, fluid user interface built on the modern JavaFX platform.
- Customizable Search Filters: Refine your searches with filters for file types, case sensitivity, and more.
- Search History: Keeps track of your previous searches for easy access.
- Configurable: Save your search settings and preferences with ease.
- Standalone Package: Distributed as a single
.jarfile with no external dependencies required to run.
- Java 21: Leverages the latest features and performance improvements from Java.
- JavaFX 22: Powers the modern, clean, and responsive user interface.
- Maven: Manages the project's build lifecycle and dependencies.
- Gson: Used for serialization and deserialization of search history and configuration.
To get a local copy up and running, follow these steps.
- Java Development Kit (JDK) 21 or later. You can download it from Adoptium.
-
Clone the repository:
git clone https://github.com/your-username/FastSearchV2.git cd FastSearchV2Remember to replace
your-usernamewith your GitHub username. -
Build with the Maven Wrapper:
On Windows:
mvnw.cmd clean package
On macOS/Linux:
./mvnw clean package
This command will compile, test, and package the application into a single executable JAR file at
target/FastSearch-1.0.0.jar.
Once you have built the application, you can run it from the command line:
java -jar target/FastSearch-1.0.0.jarThe main UI will appear.
- Enter your search term in the "Search" field.
- Click "Browse" to select the base directory where you want to start the search.
- Configure additional filters (e.g.,
*.java, *.txt) if needed. - Click the "Search" button to begin.
- Results will populate in the table as they are found. Double-click a result to open the file.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.