Fixer is a high-performance, scalable file search engine project that leverages the strengths of both Rust and Go to provide efficient search capabilities.
- Implementation of a high-performance file search engine using Rust
- Provision of a stable HTTP server using Go
- Flexible search functionality through fuzzy matching
- Scalability through microservices architecture
The project consists of two main components:
-
Rust Search Engine (
rust-search/
)- File system traversal and search index creation
- Flexible search functionality using fuzzy-matcher
- High-performance search processing
-
Go HTTP Server (
go-server/
)- RESTful API provision
- Integration with Rust search engine
- Client request handling
- Rust 1.70 or higher
- Go 1.20 or higher
- Docker (optional)
-
Clone the repository:
git clone https://github.com/yourusername/fixer.git cd fixer
-
Build and Start server
./run.sh
- Recursive file system traversal
- Fuzzy matching for filename search
- Full-text search within files
- Search interface through RESTful API
GET /search?q={query}
- Search by filenameGET /search/content?q={query}
- Search within file contentsGET /status
- Check service status
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
greptile test