SonarCloud, a cloud-based static analysis tool for your CI/CD workflows, offers a one-click automatic analysis of C and C++ projects hosted on GitHub. Zero configuration and free for open-source projects! Analyze free. Learn more →
Top 14 C++ Search Projects
-
C-Plus-Plus
Collection of various algorithms in mathematics, machine learning, computer science and physics implemented in C++ for educational purposes.
-
Typesense
Open Source alternative to Algolia + Pinecone and an Easier-to-Use alternative to ElasticSearch ⚡ 🔍 ✨ Fast, typo tolerant, in-memory fuzzy Search Engine for building delightful search experiences
I work on Typesense [1] (historically considered an open source alternative to Algolia).
We then launched vector search in Jan 2023, and just last week we launched the ability to generate embeddings from within Typesense.
You'd just need to send JSON data, and Typesense can generate embeddings for your data using OpenAI, PaLM API, or built-in models like S-BERT, E-5, etc (running on a GPU if you prefer) [2]
You can then do a hybrid (keyword + semantic) search by just sending the search keywords to Typesense, and Typesense will automatically generate embeddings for you internally and return a ranked list of keyword results weaved with semantic results (using Rank Fusion).
You can also combine filtering, faceting, typo tolerance, etc - the things Typesense already had.
[1] https://github.com/typesense/typesense
[2] https://typesense.org/docs/0.25.0/api/vector-search.html
-
SonarCloud
Analyze your C and C++ projects with just one click.. SonarCloud, a cloud-based static analysis tool for your CI/CD workflows, offers a one-click automatic analysis of C and C++ projects hosted on GitHub. Zero configuration and free for open-source projects! Analyze free.
-
ugrep
🔍NEW version 4.1: a faster, user-friendly grep replacement. Includes TUI, boolean queries (AND/OR/NOT), fuzzy search, hexdumps, searches nested archives (cpio/tar/pax/zip), compressed files (zip/gz/Z/bz2/lzma/xz/lz4/zstd), pdfs, documents, and more
-
The EF core algorithm implemented in folly [3] may be a bit faster, and implementing partitioning on top of that is relatively easy.
It would definitely compress much better than roaring bitmaps. In terms of performance, it depends on the access patterns. If very sparse (large jumps) PEF would likely be faster, if dense (visit a large fraction of the bitmap) it'd be slower.
It is possible to squeeze a bit more compression out of PEF by introducing a chunk type for Elias-Fano of the chunk complement (for very dense chunks), but you lose the operation of skipping to a given position, which is however not needed in inverted indexes (you only need to skip past a given id, and that can be supported efficiently). That is not mentioned in the paper because at the time I thought the skip-to-position operation was a non-negotiable.
[1] https://github.com/ot/ds2i/
[2] https://github.com/pisa-engine/pisa
[3] https://github.com/facebook/folly/blob/main/folly/experiment...
-
clp
Compressed Log Processor (CLP) is a free tool capable of compressing text logs and searching the compressed logs without decompression. (by y-scope)
Project mention: FOSS, cloud native, log storage and query engine build with Apache Arrow & Parquet, written in Rust and React. | /r/rust | 2022-10-01Thoughts on integrating CLP with this infra? Not sure whether this even makes sense to try? LINK
-
ustore
Multi-Modal Database replacing MongoDB, Neo4J, and Elastic with 1 faster ACID solution, with NetworkX and Pandas interfaces, and bindings for C 99, C++ 17, Python 3, Java, GoLang 🗄️
Project mention: Up to 100x Faster FastAPI with simdjson and io_uring on Linux 5.19+ | /r/programming | 2023-03-06Just to clarify, I meant in other projects, like the UKV.
-
-
InfluxDB
Collect and Analyze Billions of Data Points in Real Time. Manage all types of time series data in a single, purpose-built database. Run at any scale in any environment in the cloud, on-premises, or at the edge.
-
fccf
fccf: A command-line tool that quickly searches through C/C++ source code in a directory based on a search string and prints relevant code snippets that match the query.
-
Project mention: Grab – experimental and fast implementation of grep | news.ycombinator.com | 2023-01-07
-
The EF core algorithm implemented in folly [3] may be a bit faster, and implementing partitioning on top of that is relatively easy.
It would definitely compress much better than roaring bitmaps. In terms of performance, it depends on the access patterns. If very sparse (large jumps) PEF would likely be faster, if dense (visit a large fraction of the bitmap) it'd be slower.
It is possible to squeeze a bit more compression out of PEF by introducing a chunk type for Elias-Fano of the chunk complement (for very dense chunks), but you lose the operation of skipping to a given position, which is however not needed in inverted indexes (you only need to skip past a given id, and that can be supported efficiently). That is not mentioned in the paper because at the time I thought the skip-to-position operation was a non-negotiable.
[1] https://github.com/ot/ds2i/
[2] https://github.com/pisa-engine/pisa
[3] https://github.com/facebook/folly/blob/main/folly/experiment...
-
-
Project mention: Ugrep-indexer: A monotonic indexer to speed up grepping by >10x | news.ycombinator.com | 2023-08-11
-
Project mention: Pdfgrep – a commandline utility to search text in PDF files | news.ycombinator.com | 2022-09-25
I am working on looqs, it can do that (and also will render the page immediatly): https://github.com/quitesimpleorg/looqs
-
Spectacle
Spectacle is the first global search for Unreal Engine 4 specifiers. Check out the finished product at https://unrealistic.dev/spectacle. (by UnrealisticDev)
-
Mergify
Tired of breaking your main and manually rebasing outdated pull requests?. Managing outdated pull requests is time-consuming. Mergify's Merge Queue automates your pull request management & merging. It's fully integrated to GitHub & coordinated with any CI. Start focusing on code. Try Mergify for free.
C++ Search related posts
- A Compressed Indexable Bitset
- Obsidian Publish full text search
- DynamoDB search options
- Is it worth using Postgres' builtin full-text search or should I go straight to Elastic?
- Awesome Self-hosted Search
- Best 5 Ecommerce Search Engines for Developers
- Manticore 6.0.0 – a faster alternative to Elasticsearch in C++
-
A note from our sponsor - SonarCloud
www.sonarsource.com | 21 Sep 2023
Index
What are some of the best open-source Search projects in C++? This list will help you:
Project | Stars | |
---|---|---|
1 | C-Plus-Plus | 25,713 |
2 | Typesense | 14,803 |
3 | ugrep | 1,739 |
4 | pisa | 782 |
5 | clp | 636 |
6 | ustore | 384 |
7 | VanitySearch | 348 |
8 | fccf | 340 |
9 | grab | 247 |
10 | ds2i | 138 |
11 | hypergrep | 96 |
12 | ugrep-indexer | 31 |
13 | looqs | 19 |
14 | Spectacle | 12 |