stack-graphs
livegrep
stack-graphs | livegrep | |
---|---|---|
6 | 11 | |
694 | 1,931 | |
1.9% | 5.0% | |
9.6 | 5.5 | |
9 days ago | 28 days ago | |
Rust | C++ | |
Apache License 2.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
stack-graphs
-
Code Search Is Hard
https://github.com/pyjarrett/septum
The hardest part about getting code search right imo is grabbing the right amount of surrounding context, which septum is aimed at solving on a per-file basis.
Another one I'm surprised hasn't been mentioned is stack-graphs (https://github.com/github/stack-graphs), which tries to incrementally resolve symbolic relationships across the whole codebase. It powers github's cross-file precise indexing and conceptually makes a lot of sense, though I've struggled to get the open source version to work
-
Even the Pylint codebase uses Ruff
[2]: https://github.com/github/stack-graphs
-
The technology behind GitHub’s new code search
> It doesn't have the faintest idea where the name is defined, or if there's even a difference between a function name, a parameter name, or a word in a comment.
I don't think what you are saying is actually true for stack-graphs[0][1].
[0]: https://github.com/github/stack-graphs
[1]: https://github.blog/2021-12-09-introducing-stack-graphs/
-
Should I be worried or not worried about Tree-sitter now that the Atom editor has been killed?
I think GitHub still has some use for tree-sitter. In this post it's mentioned that their new code navigation system is based on tree-sitter. In a more recent post they welcome contributers to add special code navigation queries to existing languages. You can find their public repository here if you want to follow along with any developments. Since their code navigation system relies heavily on tree-sitter I don't think it's going anywhere soon (fingers crossed).
-
What happened with GitHub's semantic project?
Which they implement in Rust. https://github.com/github/stack-graphs
-
Stack Graphs
As mentioned elsewhere on this thread, stack graphs and Semantic were built by the same team (which I manage). Semantic is not abandoned, we've just been focusing on a different layer of our tech stack for the past year or so. https://news.ycombinator.com/item?id=29501389
That PR on the Semantic repo was our first attempt at implementing these ideas. We decided to reimplement it in a separate library (also open source, https://github.com/github/stack-graphs), which only builds on tree-sitter directly so that there's an easier story for us and language communities to add support for new languages. It's a fair point that we could have closed the Semantic PR to indicate that more clearly.
livegrep
- Livegrep: Interactively Grep Source Code
-
Code Search Is Hard
If you ever leave you can use Livegrep, which was based on code-search work done at Google. I personally don't use it right now but it's great and will probably meet all your needs.
[0] https://github.com/livegrep/livegrep
- FLaNK Stack Weekly for 13 November 2023
-
Sourcegraph is no longer Open Source
[4] is not really a usable 'product'. Livegrep (https://github.com/livegrep/livegrep) was inspired by it and is very usable.
[3] used to be a Google open source project as well, but it fell out of maintenance, and Sourcegraph took it over. It powers most of the basic regex/literal search in Sourcegraph.
Mozilla's code is searchable in Searchfox (https://searchfox.org/) which uses the indexer from Livegrep, combined with their own Git indexer and language-specific cross reference databases.
OpenGrok (https://github.com/oracle/opengrok) is also rather well known, but I have found it to have a slightly worse UI than alternatives.
- What code search tools do you use at your job?
- Ack is a grep-like source code search tool
-
Are there any good full text searching tools? I need to search against a huge amount of source code. I'm using ripgrep. The problem is that every time I search, it has to read every file again, which is kind of slow. Is there a FT searching tool that is designed with source code searching in mind.
Yes, you want https://github.com/livegrep/livegrep
-
Facebook open sources Glean: a scalable code search and query engine
If you've not had to deal with a codebase that takes VSCode longer than a few minutes to index, then you're probably outside their initial target market. If you've not had to setup a hosted code search tool (eg livegrep https://github.com/livegrep/livegrep ) because there's just too much code,
- Sourcegraph: Why we're indexing the OSS universe
What are some alternatives?
semantic-source - Parsing, analyzing, and comparing source code across many languages
Glean - System for collecting, deriving and working with facts about source code.
kickstart.nvim - A launch point for your personal nvim configuration
sourcegraph - Code AI platform with Code Search & Cody
nvim-lspconfig - Quickstart configs for Nvim LSP
zoekt - Fast trigram based code search
scip-zig - SCIP indexer for Zig!
linguist - Language Savant. If your repository's language is being reported incorrectly, send us a pull request!
pagefind - Static low-bandwidth search at scale
codesearch - Fork of Google codesearch with more options
nvim-ts-context-commentstring - Neovim treesitter plugin for setting the commentstring based on the cursor location in a file.
git-peek - git repo to local editor instantly